Conexión SSH sin contraseña

por David Abad
Conexion SSH sin password

Existen diferentes formas para acceder a servidores Linux mediante SSH sin necesidad de utilizar contraseñas.
El uso de claves SSH es una opción más segura y eficiente frente al uso de las contraseñas tradicionales. Esta opción, además de ser más cómoda, es especialmente valiosa en entornos donde se requiere una mayor seguridad.

Qué son las claves SSH

Para configurar el acceso sin contraseña a un servidor, es importante entender los conceptos básicos de qué son y cómo funcionan las claves SSH.

Las claves SSH son un par de claves criptográficas utilizadas para autenticar usuarios y sistemas durante una conexión. Estas claves SSH constan de dos partes:

  • Clave privada: Clave que representa la identidad de tu sistema y es la que se utiliza durante una conexión SSH para demostrar tu identidad y autenticarte. Esta clave debe mantenerse protegida y nunca debe compartirse.
  • Clave pública: Clave que se comparte con los servidores a los que desea acceder de forma segura. 

El punto más importante de estas dos claves es que la clave pública tiene la capacidad de cifrar datos que únicamente pueden ser descifrados por la clave privada. 

Handshake SSH

Esta es la idea clave para entender cómo funciona el proceso de autenticación en una conexión SSH, conocido como “handshake”: 

  • En primer lugar, el cliente y el servidor al que se intenta conectar comparten sus claves públicas entre sí. 
  • El servidor comprueba que la clave pública del cliente está en su lista de claves autorizadas para la conexión.
  • El servidor, para comprobar la identidad del cliente, genera un mensaje encriptado con la clave pública del cliente y la envía.
  • El cliente descifra el mensaje recibido utilizando su clave privada y lo envía al servidor para demostrar su identidad.
  • El cliente genera una “clave de sesión”, la cifra utilizando la clave pública del servidor y la envía.
  • A partir de este momento, se establece la conexión, y todos los mensajes se cifrarán utilizando una clave de sesión acordada.

Acceso mediante Authorized keys

Las Authorized keys de un servidor son un listado que recoge todas las claves públicas de los sistemas autorizados para acceder al a dicho servidor. Por tanto, añadiendo la clave pública de un cliente a este listado, éste podrá conectarse al servidor sin necesidad de introducir contraseñas.

1. (En cliente) Generar un par de claves SSH, si no se tienen unas ya generadas:

ssh-keygen -t rsa

Este comando generará los siguientes ficheros:

  • Clave privada: ~/.ssh/id_rsa
  • Clave pública: ~/.ssh/id_rsa.pub

2. (En servidor) Añadir la clave pública del cliente en el fichero ~/.ssh/authorized_keys:

Editar o crear (si no existe) el fichero ~/.ssh/authorized_keys en el servidor y copiar el contenido de la clave pública del cliente al final del fichero.

3. (En cliente) Conectar con el servidor sin contraseña:

Ventajas del uso claves SSH

A continuación se detallan las principales ventajas del uso de claves SSH frente al uso de contraseñas tradicionales:

  • Mayor seguridad: Las claves SSH son criptográficamente más seguras que las contraseñas.
  • Protección contra ataques de fuerza bruta: Las claves SSH son menos susceptibles a ataques de fuerza bruta que las contraseñas tradicionales.
  • Resistencia a ataques de suplantación de identidad: Gracias a la combinación de clave pública-privada, es posible confirmar la identidad de los usuarios.
  • Automatización: Las claves SSH son ideales para la automatización de tareas, al no ser necesario introducir contraseñas.
  • Menos exposición a ataques de phishing: Las claves SSH son ideales para la automatización de tareas, al no ser necesario introducir contraseñas.
  • Facilidad de administración: Al trabajar en entornos con varios servidores, se recomienda el uso de claves SSH, ya que con los mismos ficheros de clave es posible conectarse a todas las máquinas sin contraseñas.
  • Mejores registros de auditoría.

Déjanos tu email para recibir contenido interesante en tu bandeja de entrada, cada mes.

¡No hacemos spam!

Otros artículos