Manejando varias claves con SSH
Publicado en Linux, Recursos el 20 de April, 2010 por Fran. (4 comentarios)La mejor funcionalidad de SSH es poder usar pares de claves (pública/privada) para autenticarse en una máquina sin necesidad de introducir una contraseña. El problema radica cuando necesitas usar varios pares de claves, por ejemplo: para acceder diferentes máquinas sin compartir un mismo par de claves. Pero como con todo, siempre hay una solución para poder usar varios pares de claves distintos.
Partiendo de que se han generado dos pares de claves:
$ ssh-keygen -t rsa -f ~/.ssh/id_rsa.work -C "fran@trabajo" $ ssh-keygen -t rsa -f ~/.ssh/id_rsa.home -C "fran@casa"
La forma sencilla es crear el archivo «~/.ssh/config», añadiéndole las siguientes líneas:
IdentityFile ~/.ssh/id_rsa.work IdentityFile ~/.ssh/id_rsa.home
De este modo, cada vez que SSH conecte con una máquina intentará usar alguna de esas dos claves. Sin embargo, SSH permite realizar un control más granular sobre las claves, para ello habría que tener un archivo «~/.ssh/config» similar al siguiente:
Host 192.168.0.100 IdentityFile ~/.ssh/id_dsa.home User franchukelly Host ssh.trabajo.com IdentityFile ~/.ssh/id_rsa.work User fran Port 2211
Dónde cada campo Host permite definir una pequeña configuración que se usará de forma predeterminada cuando se realice una conexión a la dirección indicada. Por ejemplo:
$ ssh ssh.trabajo.com
SSH usaría la clave «id_rsa.work», junto al usuario «fran» y el puerto 2211.
Basado en Multiple ssh private keys.