我在SLES 10.1上,并尝试configurationvsftpd以允许rootlogin。 有谁知道如何做到这一点?
到目前为止,我有这样的:
local_enable=YES chroot_local_user=NO userlist_enable=YES userlist_deny=NO userlist_file=/etc/vsftpd.users
我已经将root添加到/etc/vsftpd.users。 当我尝试login时,这是我得到的:
$ ftp susebox 连接到susebox.example.com。 220-FTP服务器(用户“[email protected]”) 220 用户(susebox.example.com:(无)):root 331-密码: 331 密码: 由远程主机closures连接。 C:\>
顺便说一句,如果你不知道答案,请不要打扰我教我如何不应该允许rootlogin。 我知道自己在做什么,对于可能造成的时空连续性破裂,我承担全部责任。
免责声明:许多原因,启用FTP根login是一个非常糟糕的想法 。
编辑您的vsftpd.conf文件,并添加以下行:
userlist_deny=YES
编辑user_list和ftpusers并注释掉“root”。
对于那些(像我一样)在2013年中期在Ubuntu服务器上使用VSFTPD的人,默认情况下root允许通过SFTPlogin,不需要做任何特殊的修改。
但是,如果您真的需要FTP访问,我所要做的就是:
sudo nano /etc/ftpusers
通过在开始处放置一个#注释掉它的root 。 保存文件,甚至不需要重新加载服务器。
vi /etc/pam.d/vsftpd – >如果你使用vsftpd
找
auth blablabla sense=deny file=/etc/ftpusers
使其成为sense= allow或者你可以取消注释上面的script ,或修改文件:ftpusers或添加另一个ftpusers文件
对于Debian 8 Jessie,您只需编辑/etc/ftpusers并注释掉或删除root。 没有别的需要,只需重新启动vsftpd
Vsftpd可以使用pam进行身份validation,所以我build议你检查/etc/pam.d/vsftpd。 您可能会发现它已被configuration为防止rootlogin。
在更新的版本中,可能需要在/etc/vsftpd.conf文件结尾附近将pam_service_name=vsftpd更改为pam_service_name=ftp 。 否则,即使权限是正确的,您也可能会得到root(或任何用户)的login身份validation错误。