1. 配置文件
cd /etc/vsftpd/
ls
# 配置文件
chroot_list ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh
1.1 vsftpd.conf
主配置文件,在里面配置ftp的各项参数
1.2 chroot_list
该列表中的用户不被锁定在主目录
在vsftpd.conf中的相关配置
# 全部用户被限制在主目录
chroot_local_user=YES
# 启用例外用户名单
#chroot_list_enable=YES
# 指定用户列表文件,该列表中的用户不被锁定在主目录
#chroot_list_file=/etc/vsftpd/chroot_list
1.3 ftpusers
在此文件中的用户名都不允许登录ftp
1.4 user_list
userlist_enable=YES
# 如果在vsftpd.conf中添加此属性,只允许该文件中的用户登录
userlist_deny=NO
# 不允许该文件中的用户登录,也会检查ftpusers中的用户名,也不允许登录
userlist_deny=YES(默认)
解析:
- userlist_enable和userlist_deny两个选项联合起来针对的是:本地全体用户(除去ftpusers中的用户)和出现在user_list文件中的用户以及不在在user_list文件中的用户这三类用户集合进行的设置。
- 当且仅当userlist_enable=YES时:userlist_deny项的配置才有效,user_list文件才会被使用;当其为NO时,无论userlist_deny项为何值都是无效的,本地全体用户(除去ftpusers中的用户)都可以登入FTP
- 此时user_list是一个白名单,只有出现在名单中的用户才会被准许登入(user_list之外的用户都被拒绝登入)
userlist_enable=YES
userlist_deny=NO
- 此时user_list是一个黑名单,所有出现在名单中的用户都会被拒绝登入
userlist_enable=YES
userlist_deny=YES
- 特别提醒:使用白名单后,匿名用户将无法登入!除非显式在user_list中加入一行:anonymous
参考: