Physical Address

304 North Cardinal St.
Dorchester Center, MA 02124

530 Login incorrect – ProFTPD

We updated an old server recently and the ProFTP server  started throwing this error “530 Login incorrect” and wouldn’t let us in. We looked at the usual culprits, reset passwords, verified directories but nothing seemed to work.

We ran ProFTPD in debug mode like so, stop the ProFTPD service first:

service proftpd stop

Start ProFTPD in debug mode:

proftpd -n -d 20

This will hold your shell session, to quit or stop the service hit CTRL+C

You now need to try to connect to the server to see the errors it throws and this is what it spit out:

16:22:49,107 dispatching CMD command 'PASS (hidden)' to mod_auth
16:22:49,107 ROOT PRIVS at mod_auth_file.c:844
16:22:49,107 RELINQUISH PRIVS at mod_auth_file.c:847
16:22:49,107 mod_auth_file/1.0: using passwd file '/etc/proftpd/ftpd.passwd'
16:22:49,107 retrieved UID 1002 for user 'ftp-user'
16:22:49,107 ROOT PRIVS at mod_auth_file.c:609
16:22:49,107 RELINQUISH PRIVS at mod_auth_file.c:612
16:22:49,107 mod_auth_file/1.0: using group file '/etc/proftpd/ftpd.group'
16:22:49,107 retrieved group ID: 1002
16:22:49,107 retrieved group names: (None; corrupted group file?)
16:22:49,111 user 'ftp-user' authenticated by mod_auth_file.c
16:22:49,111 USER ftp-user (Login failed): Invalid shell: '/sbin/nologin'
16:22:49,111 dispatching POST_CMD_ERR command 'PASS (hidden)' to mod_vroot
16:22:49,111 mod_vroot/0.9.2: vroot unregistered
16:22:49,111 dispatching POST_CMD_ERR command 'PASS (hidden)' to mod_delay
16:22:49,115 dispatching LOG_CMD_ERR command 'PASS (hidden)' to mod_log
16:22:49,115 dispatching LOG_CMD_ERR command 'PASS (hidden)' to mod_auth
16:22:49,250 FTP session closed.

Found the culprit:

USER ftp-user (Login failed): Invalid shell: '/sbin/nologin'

To fix this you need to edit the proftpd.conf file located at /etc/proftpd.conf and add the following line to the top:

RequireValidShell             off

Kill the proftpd debug mode you started, hit CTRL+C and restart the proftpd service to start regular service:

service proftpd restart

Connect via your FTP client and it’ll work fine.