Usar ssh sin contraseña

Si queremos conectarnos a un servidor de ssh puntualmente no es molestia escribir la contraseña al hacer login, sin embargo si queremos hacerlo automáticamente desde un script, cron, etc. no solo es molestia sino que puede ser imposible meter la contraseña. Para eso necesitamos crear una clave pública para autentificarnos. Lo haremos así, por supuesto en linux:

En local, generamos la clave:

$ ssh-keygen -t rsa

Aceptamos las opciones por defecto y se nos creará en nuestra home .ssh/id_rsa.pub

Ahora tendremos que subir ese archivo al servidor remoto con el usuario que queremos usar.

En el servidor remoto, copiaremos el contenido del archivo subido al archivo de claves autorizadas (si no existe se creará, aunque si no existe el directorio .ssh habrá que crearlo antes) Y le damos permisos solo al usuario.

$ cat id_rsa.pub >>~/.ssh/authorized_keys

$ chmod 700 ~/.ssh/authorized_keys

Nota: ~ significa nuestro directorio home, este símbolo se consigue con la combinación de teclas «alt + 1, 2, 6«.

Ya podemos conectarnos por ssh sin que se nos pida password. También es válido para usar comandos que necesitan ssh como por ejemplo rsync.

1 comentario en “Usar ssh sin contraseña”

  1. Pingback: Carlos Egea » Blog Archive » Realizar copias de seguridad incrementales con rsync a un servidor remoto

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Información básica sobre protección de datos
Responsable: Carlos Egea Oróñez
Finalidad: Moderación de comentarios
Legitimación: Consentimiento del interesado
Destinatarios: No se cederán datos a terceros, salvo obligación legal. Los datos quedarán almacenados en los servidores de OVH.ES, situados en la Unión Europea (política de privacidad de OVH.ES)
Derechos: Acceso, rectificación y supresión de tus datos. Puedes ejercer estos derechos enviando un correo electrónico a carlosegea@gmail.com
Si lo deseas puedes consultar más información sobre protección de datos de esta web: política de privacidad.