I was recently trying to connect to a CentOS box from Windows and had the following error in /var/log/secure (after enabling DEBUG3 level logging in /etc/ssh/sshd_config):
Dec 19 18:01:05 hostname sshd: debug1: trying public key file /root/.ssh/authorized_keys Dec 19 18:01:05 hostname sshd: debug1: Could not open authorized keys '/root/.ssh/authorized_keys': Permission denied
It's an SELinux problem, and I don't quite understand it, but here's the one-liner that fixes it:
restorecon -FRvv ~/.ssh
Found on stackoverflow: "SSHD Gives error could not open Authorized Keys, although permissions seem correct"