Conectar por SSH sin password (autenticación de clave pública)
Para conectar a un servidor remoto por SSH sin usuario ni contraseña todo lo que hace falta es compartir una clave entre cliente y servidor. Los pasos son muy sencillos:
- Asegurarse que la carpeta .ssh existe en el servidor al que nos queremos conectar
-
Crear una clave RSA en la máquina cliente (la
que se conecta):
ssh-keygen -t rsa
Cuando se te pida por un password, dale al enter sin poner ninguno (este es el propósito del artículo, sin passwords) -
Copiar la clave pública en el servidor:
scp ~/.ssh/id_rsa.pub usuario@servidor.com:.ssh/authorized_keys2
Puedes omitir la parteusuario@
si te conectas con el mismo usuario.
Y esto es todo amigos. En la siguiente conexión por SSH ya no se pedirá de nuevo el password.
Importante:
A partir de este momento, si alguien robara la clave
privada que has guardado en ~/.ssh/id_rsa
tendría acceso completo a tu servidor. Más vale que la protejas
bien :)
Si dejas un password en la autenticación RSA puede ser una buena idea desactivar en el servidor el acceso SSH vía login/password y dejar sólo autenticación por clave.