At random intervals, ftp logins will fail and return authentication failure, even with the correct user/password.
I solved this problem when i noticed that "chkservd" (cPanel service which checks all processes are running) will only check if the main ftp daemon process is alive.
It does not check if the authentication process is alive or not!
For FTP to work correctly, you should be running these two, if the pure-authd is dead (which happens randomly or after a restart) then logins will fail.
One solution is to just run:
that should do it 
I solved this problem when i noticed that "chkservd" (cPanel service which checks all processes are running) will only check if the main ftp daemon process is alive.
It does not check if the authentication process is alive or not!
For FTP to work correctly, you should be running these two, if the pure-authd is dead (which happens randomly or after a restart) then logins will fail.
Code:
# ps ax |grep -i pure
13877 ? Ss 0:00 pure-ftpd (SERVER)
13880 pts/0 S 0:00 /usr/sbin/pure-authd -s /var/run/ftpd.sock -r /usr/sbin/pureauth
Code:
# /scripts/restartsrv_ftpserver
Starting pure-config.pl: [ OK ]
Starting pure-authd: