1、创建虚拟用户
sudo vi /etc/vsftpd/vuser.txt
在vsuer.txt中添加用户名密码
如 Tom
123
(需要安装db4_util)
2、根据vuser.txt创建数据库文件 将文本转换成数据库认证文件
sudo load_db -T -t (指定算法) hash -f (指定文件) /etc/vsftpd/vuser.txt /etc/vsftfpd/vuser.db
编辑vsftpd的pam认证
vi /etc/pam.d/vsftpd 针对本机的pam验证 2.6内核以后引入(跟本地验证一样)
auth required /lib/security/pam_usedb.so db=/etc/vsftp/vuser
account required /lib/security/pam_userdb.so db=/etc/vsftp/vuser
service vsftpd restart
重启ftpd服务
4、创建本地映射用户并设置宿主目录权限
useradd -d /home/vftproot -s /sbin/nologin vuser
ll home查看用户家目录
chmod 755 /home/vftproot 不允上传
修改配置文件
vi /etc/vsftpd/vsftpd.conf
#开启 虚拟用户验
guest _enable=YES
#FTP虚拟用户对应的系统用户
guest username=vuser
#pam认证文件默认存在
重启vsftpd
service vsfftpd restart
如果设置了本地用户登录目录local_root=/任何路径/
没有登录到用户家目录 /home/vsftpd
虚拟用户可以登陆
7.调整虚拟用户权限
#关闭虚拟用户登录
anonymous_enable=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
FTP权限允许虚拟用户登录
如果登录目录权限允许上传下载虚拟用户可以上传下载。
重启服务
FTP是否可执行上传下载需要FTP和本地读写权限