分类:
2010-07-15 18:50:43
一般方法:
1、建立虚拟帐号和用户口令文件
A vi logins.txt 口令库文件中奇数行为用户名、偶数行设置密码
B 生成vsftpd的认证文件
命令 db_load -T -t hash -f ./logins.txt /etc/vsftpd/vsftpd_login.db
C 建立虚拟用户所需的PAM配置文件。
手工建立vsftpd.vu 文件
****重要****
auth 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