Llamaremos cliente a la máquina desde la que nos conectamos, y servidor a la que nos queremos conectar. Nuestro usuario también debe existir en el servidor, y si no deberemos usar el formato usuarioqueexiste@servidor en nuestras llamadas ssh. Todas estas operaciones las haremos desde el cliente, y en todas ellas nos pedirá nuestro password. Allá vamos:
Generamos un par de claves (con una sería suficiente, pero nos aseguramos de tenerlas para futuras necesidades), y reunimos sus partes públicas en un único archivo para enviarlas juntas al servidor:
ssh-keygen -t rsaSi no existe, debemos crear un directorio .ssh (y lo podemos hacer por ssh):
ssh-keygen -t dsa
cat .ssh/*pub >> claves
ssh servidor "mkdir .ssh"Nos pedirá la contraseña y ejecutará el comando. Después copiamos al servidor las claves que generamos al principio:
scp claves fulanito@servidor:.ssh/y después volcamos las dos claves públicas al archivo donde realmente se nos otorga la confianza:
ssh servidor "cd .ssh; cat claves >> authorized_keys; rm claves"Y esta será la última vez que nos habrá pedido la contraseña. Lo comprobamos:
ssh servidorEt voilà, entramos sin que nos pida nada más.