一开始 chroot_local_user 与 chroot_list_enable的关系很难搞清楚,找了网上的部分资料也是迷迷糊糊的,
这边说下我自己的理解.
chroot_local_user=YES #是否将所有用户锁定在主目录,YES为启用 NO禁用.(包括注释掉也为禁用)
chroot_list_enable=YES #是否启动锁定用户的名单 YES为启用 NO禁用(包括注释掉也为禁用)
chroot_list_file=/etc/vsftpd.chroot_list #禁用的列表名单 格式为一行一个用户, 如果名单里面有一个ftpuser的用户, 则ftpuser用户不会锁定在主目录,用户将可以自由切换目录.
举例:
情况一:
现在有 ftp1 ftp2 ftp3 这三个ftp的用户, 想让1跟2用户锁定主目录不允许切换到其他目录, 但是允许3用户自由切换
那么/etc/vsftpd.chroot_list列表名单如下:
ftp3
也就说chroot_local_user=YES 并且 chroot_list_enable=YES 的时候
vsftpd.chroot_list名单里面添加的是排除锁定主目录的用户名单.
情况二:
如果chroot_local_user=NO 并且 chroot_list_enable=YES 的时候
那么/etc/vsftpd.chroot_list列表名单如下:
ftp1
ftp2
情况三:
如果chroot_local_user=YES 并且 chroot_list_enable=NO 的时候
那列表名单也就不生效了,
因此满足上面的条件时, 所有的FTP用户将全部锁定在主目录.