SSH sin password
Podemos solucionar nuestro problema haciendo que un equipo confíe en el otro. Mirándolo de otra forma podemos pensar que es inseguro, pero en ciertas ocasiones merece la pena tener esta configuración, más aún si los 2 equipos son propiedad de la misma persona :) Un caso práctico al que se puede aplicar todo esto es en una copia de seguridad de una máquina a otra a través de rsync o scp, así que allá vamos:
Para empezar tenemos que generar una clave dsa pública local que posteriormente exportaremos al ordenador remoto:
luser@local# ssh-keygen -t dsa Generating public/private dsa key pair. Enter file in which to save the key (/luser/.ssh/id_dsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /luser/.ssh/id_dsa. Your public key has been saved in /luser/.ssh/id_dsa.pub. The key fingerprint is: aa:rr:aa:ss:ff:rr:ee:nn:aa:dd:aa:ll:aa:rr:gg:aa luser@local#La passphrase la dejamos en blanco, pues buscamos eso, no interactuar en el ssh. Una vez generada esa clave, debemos pasarla de forma segura (es muy importante no pasarla por ftp, mail o similares) a la máquina remota. Podemos hacerlo de la siguiente manera:
luser@local# scp .ssh/id_dsa.pub luser@remote:/home/luser/.ssh/authorized_keys2 luser@local#O más sencillo todavía:
$ ssh-copy-id -i ~/.ssh/id_dsa.pub user@remote.machine.comUna vez pasada la clave a la máquina remota estamos en condiciones de hacer un ssh sin contraseña alguna:
luser@local# ssh remote ls .bash_history .bashrc pipiculas tonteridas ... luser@local#Este mini-post está inspirado en el de Natxo Morell, quería tener la anotación en mi bitácora para poder consultar un utilísimo truck & tip cuando no lo recuerde, mi memoria a veces falla. Gracias Natxo.
- pAvL0 Y no sería más sencillo permitir el acceso sin contraseña y limitar la ip ?? o en tal caso hacer las dos cosas. Besitos
- mazzi Muy bueno el post! :D
- reidrac Porque las claves RSA (o DSA en el ejemplo de r0sk) son más fáciles de guardar que una IP ;) Pero bueno... si un atacante se puede molestar tanto en saltarse un control por IP, no veo porqué no puede comprometer tus claves RSA :P
- luca Esta técnica es muy poco recomendada, así fue como entraron en los servidores de Debian. Lo más recomendado es poner una passphrase (bien complicada) y usar ssh-agent y ssh-add para que el ssh recuerde la passphrase en una sesión. De esta manera aprovechamos lo mejor de los 2 mundos, por un lado para un cracker que entre a nuestra PC no será tan sencillo meterse en todos los servidores en los que tenemos acceso via ssh y por otro seguimos teniendo la comodidad de no tener que poner la passphrase cada 5 minutos (la ponemos una sola vez al iniciar la sesion). Espero que sirva.
- r0sk Para varios ordenadores de confianza, con agregar las claves a authorized_keys2 llegaría: cat authorized_keys_nuevo >> authorized_keys2
- santi y no es mas facil pernitir el accseso sin contraceña
- bato-loco luca, podrias explicarnos mejor como hacer lo que nos indicas entu comentariopor favor?
- Emilio Hola, Os dejo un tutorial sobre el tema, que quizás os resulte de interés: http://ociotec.com/index.php/2008/06/25/ssh-sin-password/
- Sergi Muchas gracias por esta valiosa información. He realizado todos los pasos al pie de la letra y me ha funcionado perfectamente a la primera. Gracias!
- CarrNatalia19 People all over the world receive the credit loans in various banks, because that's fast and easy.