Acceder por SSH sin contraseña

por el 26/07/17

Hoy os traemos una mini-guía para que podáis conectar por SSH sin necesidad de introducir la contraseña cada vez.

Para eso usaremos el método de clave pública / clave privada.

Desde el equipo cliente, debemos generar tanto la clave pública como la privada, para ello:

Nos aseguramos que existe el directorio por defecto donde se almacenan las claves.

mkdir -p ~/.ssh

Generamos las claves.

ssh-keygen -t rsa -f ~/.ssh/id_rsa

Ejecutando el comando arriba indicado, nos preguntará si queremos usar una passphrase, dejamos esto a vuestra elección.

Ahora debemos llevar la clave pública al fichero de claves autorizadas del servidor SSH.

cat ~/.ssh/id_rsa.pub | ssh user@remote_host.com 'mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys'

El comando superior consta de 4 partes:

  • Mostrar el contenido del fichero que contiene la clave pública y redireccionarlo a una conexión SSH.
  • Mediante conexión SSH al servidor:
    • Crear directorio SSH por defecto.
    • Añade la clave pública del cliente al fichero authorized_keys. (Es el contenido previamente redireccionado)
    • Cambia los permisos del fichero para que solo el propietario lo pueda leer y escribir.

Y listo, ya tenemos el servidor listo para dejarnos conectar sin preguntarnos por la contraseña cada vez.

Extra tip: Si a este tutorial le sumáis el crear un alias de comando para realizar una conexión SSH, os facilitaréis muchísimo la tarea de realizar conexiones SSH.

Escribir un Comentario