30.7.08

Autentificación SSH mediante pares de claves DSA

Como complemento a las recetas publicadas con anterioridad sobre Seguridad Básica de SSH, nos quedaba pendiente la autentificación mediante certificados.

Para ello, simplemente debemos crear un juego de claves:

ssh-keygen -t dsa

Comando mediante el cual crearemos una clave del tipo DSA de 1024 bits que se guardará en el directorio ~/.ssh/id_dsa, cuya clave pública estará en ~/.ssh/id_dsa.pub.

Una vez que se ha creado el juego de llaves deberemos cambiar la configuración del sistema para comience a trabajar con ellas en lugar de validar tuplas usuario/password, configuración que realizaremos en el equipo que actúa como servidor SSH (al que nos queremos conectar).Para ello editaremos el fichero de configuración /etc/ssh/sshd_config y aplicaremos los cambios en las opciones:

Protocol 2
PermitRootLogin without-password
PasswordAuthentication no


Antes de reiniciar el servicio en el servidor y poder logearnos con la nueva configuración, tendremos que copiar la clave pública que generemos en el esclavo a ~/.ssh/authorised_keys.

NOTA: Dependiendo del sistema, de la configuración y los permisos del $HOME, conviene (si no lo está) cambiar los permisos de los ficheros a 700.