我已经在Ubuntu 14.04的LEMP堆栈上安装了VSFTPD。 对vsftpd.conf所做的唯一重大改变是:
anonymous_enable=no local_enable=yes write_enable=yes chroot_local_user=yes allow_writeable_chroot=yes
VSFTPD应该阻止根访问默认情况下,我已经检查了/etc/ftpusers文件和根目录在文件中,以拒绝访问,但是我能够ftp到服务器使用root帐户。 当我这样做时,我被带入并且入狱了/root文件夹。
我怎样才能禁用根login通过FTP?
/etc/pam.d/vsftp内容:
# Standard behaviour for ftpd(8). auth required pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed # Note: vsftpd handles anonymous logins on its own. Do not enable pam_ftp.so. # Standard pam includes @include common-account @include common-session @include common-auth auth required pam_shells.so
join
userlist_enable=yes userlist_deny=yes userlist_file=/etc/vsftp.user_list
确实拒绝了root用户访问 – 但是只有在userlist文件中只有一行的情况下。 如果我添加多个用户(每行一个),那么它会中断并允许rootlogin。
如果root不是从/etc/ftpusers文件中读取的,那么我假设其他用户,如mail , daemon , man , nobody等都不被读取? (因此,我试图将它们添加到用户列表文件)
确保以下内容在你的vsftpd.conf中
userlist_deny=YES
然后确保根在
/etc/vsftpd/user_list
重启vsftp,它应该拒绝rootlogin