Look at /etc/passwd and see if postgres is set to "nologin" or /bin/false as the shell.
If you have a non-valid shell, you cannot log into the account.