SSH: conexiones seguras, configuración y archivos clave para servidores y clientes

Clasificado en Informática

Escrito el en español con un tamaño de 4,12 KB

TM4: SSH

SSH es una herramienta que permite realizar conexiones seguras en aparatos conectados a una red insegura. Su objetivo es establecer conexiones remotas que permitan la transmisión segura de cualquier dato. El SSH usa el puerto 22, permite autenticarse por contraseña o por sistema de llaves, permite integrarse con otros sistemas de autenticación y está implementado para la mayoría de los sistemas operativos (SO) y plataformas.

Ventajas de usar SSH

Las ventajas de usar SSH son:

  • El cliente transmite al servidor las credenciales para autenticarse de forma cifrada.
  • Todos los datos que se envían y reciben están cifrados.
  • El cliente puede ejecutar aplicaciones desde el terminal de forma segura.

¿Qué es un túnel SSH?

Un túnel SSH es una herramienta que habilita un puerto en el ordenador y establece una conexión encriptada a una segunda máquina, de forma que todos los datos que pasen por ese puerto pasarán de forma segura al segundo equipo.

Cliente SSH

Un cliente SSH es la herramienta que permite al usuario solicitar el establecimiento de una conexión segura con el servidor SSH. PuTTY es un cliente SSH libre muy utilizado en entornos Windows para conexiones remotas.

Archivos y parámetros de configuración

A continuación se describen los archivos y parámetros más relevantes relacionados con SSH. Se mantienen los nombres tal y como suelen aparecer en sistemas basados en OpenSSH:

  • SSHD_CONFIG: Describe la configuración del servidor SSH. Permite configurar opciones como el puerto de escucha, la versión del protocolo, dónde se encuentra la clave privada de la máquina o si ha sido generada con RSA o DSA.
  • SSH_CONFIG: Describe la configuración del cliente SSH. Puede que un cliente tenga opciones de conexión diferentes.
  • SSH_HOST_RSA_KEY: Clave RSA privada de la máquina.
  • SSH_HOST_RSA_KEY.PUB: Clave RSA pública de la máquina.
  • KNOWN_HOSTS: Claves públicas de otras máquinas (hosts conocidos).
  • SSH_HOST_DSA_KEY: Clave DSA privada de la máquina.
  • SSH_HOST_DSA_KEY.PUB: Clave DSA pública de la máquina.

Parámetros de ejemplo

  • PermitRootLogin no: Señala que el usuario administrador root no puede conectarse a la máquina remota.
  • RSAAuthentication yes: Está permitida la autenticación por clave RSA.
  • PubkeyAuthentication yes: Permite la autenticación por clave pública.
  • RhostsAuthentication no: No permite autenticarse por rhosts; no puede generarse un archivo rhosts para autenticación.
  • HostbasedAuthentication no: No permite autenticarse por host, pero sí por usuario.
  • X11Forwarding yes: Permite que los clientes ejecuten aplicaciones y transmitan información gráfica sobre la conexión segura.
  • MaxAuthTries nn: Número máximo de intentos de conexión (donde nn representa un valor numérico).

Notas finales

La correcta configuración de los archivos y parámetros mencionados es esencial para mantener la seguridad de las conexiones remotas. Se recomienda revisar las opciones por defecto en sshd_config y ssh_config, gestionar de forma segura las claves privadas (SSH_HOST_RSA_KEY, SSH_HOST_DSA_KEY) y controlar el archivo known_hosts para evitar conexiones no deseadas.

Entradas relacionadas: