Para conectarse a un servidor vía SSH sin contraseña es muy sencillo, pongamos un escenario donde desde nuestra casa nos queremos conectar al trabajo por SSH, nuestra clave es compleja y es tedioso tener que escribirla constantemente,. Hay varias soluciones, una es crear un trusted host (sitio confiable) del cual nos vamos a conectar, la otra es crear una llave que nos permita acceder con la comprobación de las mismas de forma automática, que es la que nosotros recomendamos.
Lo primero, en nuestra máquina cliente generamos una llave DSA con el siguiente comando:
root@doctoresdelpc:/ssh-keygen -t dsa
Esto nos preguntará el archivo a guardar y opcionalmente una frase de desafio que se enviará (y nos pedirá) cada que nos conectemos al servidor destino. Esta puede ser en blanco.
Una vez hecho esto, se genera el archivo:
root@doctoresdelpc:/root/.ssh/id_dsa.pub
el cual debemos copiar al servidor que nos queremos conectar sin contraseña, concretamente en este otro archivo
root@servidor:/root/.ssh/authorized_keys
Para ese ejemplo hemos escogido al usuario root, pero se podría hacer para cualquier usuario, la diferencia sería que los directorios serían /home/nombreusuario/.ssh
Listo, eso debería bastar para conectarse con ssh root@host sin una contraseña.
Esto es para no estar poniendo la clave cada vez desde una máquina de confianza.