Si frecuentemente nos conectamos a otro equipo vía SSH, o hemos definido un proceso que se ejecuta automáticamente y de manera desatendida, podemos valernos de este método para evitar que al realizar la conexión el sistema nos solicite la contraseña.
Nos referiremos a cliente como la maquina que se quiere conectar al servidor, sin que este último le solicite clave.
Editamos el archivo /etc/ssh/sshd_config
nano /etc/ssh/sshd_config
Verificamos la presencia de estas lineas:
RSAAuthentication yes
PubkeyAuthentication yes
Luego verificar si en el cliente están creadas las llaves publicas RSA y DSA
ls ~/.ssh
En caso de estar creadas, deberíamos observar estos archivos:
id_dsa.pub
En caso de no estar creadas, ejecutar:
ssh-keygen -t rsa
ssh-keygen -t dsa
ssh-add
Ahora la idea es copiar el contenido de los archivos id_rsa.pub e id_dsa.pub dentro del archivo ~/.ssh/authorized_keys en el servidor.
En el cliente:
scp ~/.ssh/id_rsa.pub usuario@servidor:.ssh/1.pub
scp ~/.ssh/id_dsa.pub usuario@servidor:.ssh/2.pub
En el servidor:
cd .ssh/
cat 1.pub >> authorized_keys
cat 2.pub >> authorized_keys