Make sure the permissions on the ~/.ssh directory and its contents are proper. When I first set up my ssh key auth, I didn’t have the ~/.ssh folder properly set up, and it yelled at me.
- Your home directory
~, your~/.sshdirectory and the~/.ssh/authorized_keysfile on the remote machine must be writable only by you:rwx------andrwxr-xr-xare fine, butrwxrwx---is no good¹, even if you are the only user in your group (if you prefer numeric modes:700or755, not775).
If~/.sshorauthorized_keysis a symbolic link, the canonical path (with symbolic links expanded) is checked. - Your
~/.ssh/authorized_keysfile (on the remote machine) must be readable (at least 400), but you’ll need it to be also writable (600) if you will add any more keys to it. - Your private key file (on the local machine) must be readable and writable only by you:
rw-------, i.e.600. - Also, if SELinux is set to enforcing, you may need to run
restorecon -R -v ~/.ssh(see e.g.Ubuntu bug 965663 and Debian bug report #658675; this is patched in CentOS 6).
http://unix.stackexchange.com/questions/36540/why-am-i-still-getting-a-password-prompt-with-ssh-with-public-key-authentication