1、使用D库存储用户名和密码
所需软件:
#rpm –qa | grep db4
Db4-devel-4.2.52-7.1
Db4-4.2.52.7.1
Db4-utils-4.2.52-7.1
2、建立一个logins.txt的文件 ,单行为用户名,双数行为 密码
如: #vim /home/logins.txt
test1
123456
3、建立数据库文件并设置文件属性
#db_load –T –t hash –f /home/logins.txt /etc/vsftpd_login.db
#chmod 600 /etc/vsftpd_login.db
4、建立认证文件
#vim /etc/pam.d/ftp将前面的全部禁止掉,插入如下两行
auth required /lib/security/pam_userdb.so db=/etc/vsftpd_logiin
account required /lib/security/pam_userdb.so db=/etc/vsftpd_login
5、建立一个虚拟用户
# useradd -d /home/vsftpd –s /sbin/nologin vsftpd
# ls -ld /home/vsftpd
drwx------ 3 vsftpd vsftpd 1024 jun 6 22:55 /home/vsftpd
6、编写配置文件
# vim /etc/vsftpd.conf
注释:
其中的guest_enable 和guest_username 两行是启用虚拟用户,因为虚拟用户默认使用的是匿名用户权限,如果指定virtual_user_local_privs=YES,则虚拟用户和本地用户权限相同。
也可以独立设置它们的权限
可以在/etc/vsftpd/vsftpd.conf中添加user_config_dir=/etc/vsftpd/user_config
如:
user_config中建立与虚拟用户一样的文件,如virtual1(可创建目录,写,上传速度),指定目录/root/virtual1
vim virtual1
内容:
anon_mk_wirte_enable=YES
anon_max_rate=50000
anon_root=/root/virtual1
可设置的权限:
anon_world_readable_only=NO ‘能读,不能浏览目录
anon_upload_enable=YES ’能否上传
anon_mkdir_write_enable=YES ’创建目录和写操作
anon_other_write_enable=YES ‘允许创建和删除
测试结果如下:
转载于:https://blog.51cto.com/lucklong/460797