A vsftp user suddenly cannot connect with a 530 error. Clearly the password was never changed, so why the wrong password prompt?
Turns out, it’s due to vsftp password expiration. Use the following command to check the password expiration time:
chage yang123 -l # where yang123 is the username

Use the command below to extend the password validity period:
chage -M 99999 yang123
In the command above, yang123 is the FTP username; replace it with your own.
Of course, since vsftp uses system accounts for passwords, this method works equally well for regular SSH password