先关闭防火墙和seLinux
1.创建用户文件
[root@k1 ~]# cat 1.list
test1
123456
test2
123456
创建虚拟用户要映射的用户 不能登录本地系统
[root@k1 ~]# useradd -s /sbin/nologin ftpxuni
设置密码
2.创建db文件,先要到/etc/vsftpd/下建一个db文件
[root@k1 vsftpd]# touch test.db
[root@k1 vsftpd]# ls
ftpusers test.db user_list vsftpd.conf vsftpd_conf_migrate.sh
[root@k1 ~]# db_load -T -t hash -f 1.list /etc/vsftpd/test.db
放开权限
[root@k1 ~]# chmod 600 /etc/vsftpd/test.db
3.修改/etc/pam.d下面的vsftpd文件
[root@k1 ~]# vim /etc/pam.d/vsftpd
test是指的刚刚创建的test.db
这里把其他的都禁掉
留下这连段即可
auth required pam_userdb.so db=/etc/vsftpd/test
account required pam_userdb.so db=/etc/vsftpd/test
#%PAM-1.0
#session optional pam_keyinit.so force revoke
#auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
#auth required pam_shells.so
auth required pam_userdb.so db=/etc/vsftpd/test
account required pam_userdb.so db=/etc/vsftpd/test
#session required pam_loginuid.so
#session include password-auth
退出重启服务
[root@k1 ~]# systemctl restart vsftpd
4.进入到vsftpd配置文件中
[root@k1 ~]# vim /etc/vsftpd/vsftpd.conf
在最低下加上
user_config_dir=/etc/vsftpd
guest_enable=YES
guest_username=ftpxuni
User_config_dir=/etc/vsftpd //用户配置文件路径
Guest_enable=yes //开启用户身份映射
Guest _username=ftpxuni //映射登录用户为ftpxuni用户,配合上面的一起用
退出重启服务
[root@k1 ~]# systemctl restart vsftpd
5.访问测试
进入cmd
可以看到创建的虚拟用户都可以登录上去