0

I am setting up a new user let his name be ftpguy. He has access to only one directory /var/www/xxx. I have already chowned the directory so that he has write and read privileges. The user is also unable to login via ssh as I have disabled that by changing his shell to /sbin/nologin.

Also, in vsftpd config, I have enabled the chroot_local_user. Now whenever I log in from ftp, i get an auth error.

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

I changed the password to something different several times, using the passwd command, nothing happens, i still the above error.

However I am able to log in with my ssh creditals to my ftp server without any problems.(I do not use a key).

1 Answer 1

2

Check your vsftpd config for the setting check_shell if it is set to YES change it to NO. If it is not there at all add it and set it NO as well. Having check_shell set to YES (and YES is the default for this) vsftpd will check if the users shell is in /etc/shells if it is not in there it will disallow the login.

1
  • That did not work, I had to edit my PAM file and remove a line but you gave me the idea, ♥ ya :)
    – HackToHell
    Oct 2, 2012 at 16:25

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .