规则 | chroot_local_user=YES | chroot_local_user=NO |
---|---|---|
chroot_list_enable=YES | 所有用户都被限制在其主目录下 2.使用chroot_list_file指定的用户列表,这些用户作为“例外”,不受限制 | 所有用户都不被限制其主目录下 2.使用chroot_list_file指定的用户列表,这些用户作为“例外”,受到限制 |
chroot_list_enable=NO | 所有用户都被限制在其主目录下 2.不使用chroot_list_file指定的用户列表,没有任何“例外”用户 | 所有用户都不被限制其主目录下 2.不使用chroot_list_file指定的用户列表,没有任何“例外”用户 |
- yum -y install vsftpd
- 创建用户 并且加入sftp用户组
useradd sun -g sftp
passwd sun (输入密码)
创建目录指定用户目录为/ftpdir/sun,并授权给sftp用户组
mkdir -p /ftpdir/sun
chown root:sftp /ftpdir
chown root:sftp /ftpdir/sun
usermod -d /ftpdir/sun sun
- vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO ##将anonymous_enable设置为NO
追加下面配置
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
userlist_deny=NO
userlist_file=/etc/vsftpd/user_list
local_root=/ftpdir
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
user_config_dir=/etc/vsftpd/userconfig
allow_writeable_chroot=YES #这个必须有否则认证失败
重启vsftpd服务
systemctl status vsftpd
systemctl restart vsftpd
user_config定义用户跳转,以用户名命名文件,文件配置用户的跳转路径eg:local_root=/ftpdir/sun
如果访问不了
setenforce 0
getenforce
getsebool -a|grep ftp