Hoy vamos con una entrada de las tontas, de esas que por no mirar un log tardamos más de lo debido en resolver el problema. En este caso algo tan simple como configurar el acceso sin password y con llaves públicas de ssh me ha tenido unos minutos intrigado.
Básicamente, el problema ha sido por una configuración de umask un poco puñetera para el usuario:
$ umask 0002
Para los que no tengáis claro como funciona umask, revisad este artículo: El comando umask. En este caso al crear el fichero authorized_keys para almacenar las llaves públicas, este umask ha provocado que se creara con permisos muy poco seguros…
-rw-rw-r--. 1 foo foo 0 ene 27 22:12 authorized_keys
Y claro, ssh decía que de esta no era la forma correcta en el /var/log/secure:
Jan 27 21:55:52 nodo2 sshd[3282]: Authentication refused: bad ownership or modes for file /home/foo/.ssh/authorized_keys Jan 27 21:55:53 nodo2 sshd[3284]: Connection closed by 192.168.1.128
Securizamos con un 400 o 600 y solucionado:
$ chmod 600 /home/foo/.ssh/authorized_keys
Yo estaba empeñado en que era problema de SElinux, pero al ver que el modo permisivo no hacía que se solucionara el próximo paso tenía que ser mirar messages o secure.
Saludos,
Estoy tratando de crear el archivo, para poder ejecutarlo por SSH con ./Nombre , gracias!!