Como no se ha mencionado explícitamente, sshd es por defecto muy estricto en los permisos para los authorized_keysarchivos. Por lo tanto, si authorized_keysse puede escribir para alguien que no sea el usuario o si alguien que no sea el usuario puede hacerlo, se negará a autenticarse (a menos que sshd esté configurado con StrictModes no)
Lo que quiero decir con "se puede hacer que se pueda escribir" es que si alguno de los directorios principales es escribible para otra persona que no sea el usuario, los usuarios autorizados a modificar esos directorios pueden comenzar a modificar los permisos de tal manera que puedan modificar / reemplazar claves autorizadas.
Además, si el /home/username/.sshdirectorio no es propiedad del usuario y, por lo tanto, el usuario no tiene permisos para leer la clave, puede tener problemas:
drwxr-xr-x 7 jane jane 4096 Jan 22 02:10 /home/jane
drwx------ 2 root root 4096 Jan 22 03:28 /home/jane/.ssh
Tenga en cuenta que jane no posee el .ssharchivo. Solucione esto a través de
chown -R jane:jane /home/jane/.ssh
Este tipo de problemas de permisos del sistema de archivos no se mostrarán ssh -vy ni siquiera se mostrarán en los registros sshd (!) Hasta que establezca el nivel de registro en DEBUG.
- Editar
/etc/ssh/sshd_config. Quieres una línea que se lea LogLevel DEBUGallí en alguna parte. Vuelva a cargar el servidor SSH utilizando el mecanismo proporcionado por la distribución. ( service sshd reloaden RHEL / CentOS / Scientific.) Una recarga elegante no eliminará las sesiones existentes.
- Intenta autenticarte de nuevo.
- Averigüe dónde van los registros de su instalación de autenticación y léalos. (IIRC,
/var/log/auth.logen distribuciones basadas en Debian; /var/log/secureen RHEL / CentOS / Scientific.)
Es mucho más fácil averiguar qué está mal con la salida de depuración que incluye errores de permisos del sistema de archivos. ¡Recuerde revertir el cambio /etc/ssh/sshd_configcuando haya terminado!