特定用户无法login到vsftpd

我正在build立一个新用户让他的名字是ftpguy 。 他只能访问一个目录/var/www/xxx 。 我已经拥有了这个目录,所以他拥有读写权限。 用户也无法通过sshlogin,因为我已经通过将其shell改为/sbin/nologin来禁用了它。

另外,在vsftpdconfiguration中,我已经启用了chroot_local_user 。 现在每当我从ftplogin,我都会得到一个auth错误。

 Connect socket #1008 to xxxxxxxx, port 21... 220 Welcome to blah FTP service. USER ftpguy 331 Please specify the password. PASS ********** 530 Login incorrect. 

我改变了密码几次不同,使用passwd命令,没有任何反应,我仍然是上述错误。

不过,我可以用我的ssh信用卡login到我的ftp服务器,没有任何问题(我没有使用密钥)。

如果将check_shell设置为YES,请检查vsftpdconfiguration是否将其更改为NO。 如果不是,那就把它加上,并把它设置为NO。 将check_shell设置为YES(并且YES是默认设置),vsftpd将检查用户shell是否在/ etc / shells中,如果它不在那里,将会禁止login。