linux 下的vsftp虚拟用户的设置

我是再as4上用rpm包装的;具体的安装步骤就不说了挺容易的!

1、建立虚拟帐号和用户口令文件

A   vi logins.txt 口令库文件中奇数行为用户名、偶数行设置密码

B  生成vsftpd的认证文件

命令 db_load -T -t hash -f ./logins.txt /etc/vsftpd/vsftpd_login.db

C  建立虚拟用户所需的PAM配置文件。

手工建立vsftpd.vu 文件

****重要****  uth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

****重要****  account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

  建立所有FTP虚拟用户帐号使用的系统用户帐号,并设置该帐号宿主目录的权限。

  # useradd -d /home/ftpsite virtual

  # chmod 700 /home/ftpsite

  f,设置vsftpd.conf配置文件。

  在配置文件中添加虚拟用户的配置内容。

  guest_enable=YES

  guest_username=virtual

  pam_service_name=vsftpd.vu

  重新启动vsftpd服务程序。

对虚拟用户设置不同的权限

  设置主配置文件。

  在vsftpd.conf文件中添加用户配置文件目录设置。

  user_config_dir=/etc/vsftpd_user_conf

  建立用户配置文件目录。

  使用mkdir命令建立用户配置文件目录。

  # mkdir /etc/vsftpd_user_conf

  为虚拟用户建立单独的配置文件。

  用户配置文件名称与用户名相同。

  /etc/vsftpd_user_conf/mike

  /etc/vsftpd_user_conf/john

  里面的内容如下:

  anon_world_readable_only=NO 表示用户可以浏览FTP目录和下载文件

  anon_upload_enable=YES 表示用户可以上传文件

  anon_mkdir_write_enable=YES 表示用户具有建立和删除目录的权限

  anon_other_write_enable=YES 表示用户具有文件改名和删除文件的权限

  没有的配置项默认按照vsftpd.conf的配置内容

#virtual_use_local_privs 设置为 YES 时,虚拟用户使用与本地用户相同权限,设置为 NO 时,虚拟用户使用与匿名用户相同权限
virtual_use_local_privs=YES
#pam 认证文件名
pam_service_name=vsftpd
#将本地用户限制在家目录
chroot_local_user=YES