Learning Center
Protocolo SSH seguro

Cómo conectarse a un servidor mediante SSH: Guía Paso a Paso

21 ene 2026
Hostman Team
Hostman Team

SSH es un protocolo de capa de aplicación que se utiliza comúnmente para el acceso remoto. En este artículo, analizaremos cómo usar el protocolo SSH para conectarse a servidores Linux remotos y cómo configurar ciertos parámetros para mejorar la seguridad.

SSH puede utilizarse con cualquier distribución de Linux, ya que está habilitado de forma predeterminada en la mayoría de los sistemas Unix y Linux modernos.

En esta guía, todas las pruebas se realizaron en Ubuntu 22.04; sin embargo, también puede aplicarse a otras distribuciones como Debian, CentOS, etc.

Métodos para conectarse mediante SSH
Copiar enlace

Puedes utilizar varios programas cliente para conectarte a servidores Linux a través de SSH. Algunos de los más populares son:

  • Windows: PuTTY, Bitvise SSH Client, SuperPuTTY, mRemoteNG, MobaXterm

  • macOS: Termius o la utilidad SSH integrada en Terminal

  • Windows (Windows 10, Windows 11, Windows Server 2019): el cliente OpenSSH integrado, accesible desde la línea de comandos (cmd) o PowerShell

Sintaxis del comando SSH
Copiar enlace

La sintaxis estándar del comando SSH es la siguiente:

  • ssh <usuario@IP_o_dominio>

Por ejemplo:

  • ssh alex@166.1.227.189

De forma predeterminada, SSH se conecta a través del puerto 22. Si el servidor utiliza un puerto diferente, especifícalo con la opción -p:

  • ssh alex@166.1.227.189 -p 2222

Archivo de configuración del servidor SSH
Copiar enlace

El archivo de configuración del servidor SSH se llama sshd_config y se encuentra en el directorio /etc/ssh. No debe confundirse con el archivo del cliente SSH ssh_config. En este artículo nos centraremos únicamente en el archivo del servidor.

Autenticación SSH mediante contraseña
Copiar enlace

De forma predeterminada, las conexiones SSH se basan en contraseñas, a menos que se haya añadido una clave SSH durante la creación del servidor (las claves SSH se explican en la siguiente sección). En la mayoría de las distribuciones Linux/Unix, la configuración del servidor incluye autenticación PAM, lo que permite a los usuarios con cuentas del sistema iniciar sesión usando su nombre de usuario y contraseña.

Para iniciar sesión con contraseña, necesitas la dirección del servidor remoto y las credenciales del usuario, por ejemplo:

  • ssh alex@166.1.227.189

Después de ejecutar el comando, se te pedirá la contraseña. Si es correcta, accederás al servidor.

Al conectarte por primera vez, verás un mensaje sobre la “huella digital” del servidor. Escribe yes para continuar.

Aunque la autenticación por contraseña funciona, no es el método más seguro, ya que las contraseñas pueden ser adivinadas. Una alternativa más segura es el uso de claves SSH, que se describe en la siguiente sección.

Autenticación mediante claves SSH
Copiar enlace

Las claves SSH son un método de autenticación más seguro y común que las contraseñas. SSH utiliza dos tipos de claves:

  • Clave pública: se utiliza para el cifrado y puede compartirse públicamente

  • Clave privada: se utiliza para el descifrado y debe mantenerse en secreto

Para generar claves SSH, utiliza el siguiente comando:

  • ssh-keygen

El comando te pedirá que elijas un directorio para guardar las claves. De forma predeterminada, se almacenan en el directorio .ssh de tu carpeta personal, por ejemplo /home/alex/.ssh. Pulsa Enter para usar la ruta predeterminada.

A continuación, se te pedirá que establezcas una frase de paso (passphrase) para mayor seguridad. Si prefieres no usar una, pulsa Enter cuando se te solicite.

Una vez generadas las claves, la clave privada (id_rsa) y la clave pública (id_rsa.pub) se almacenarán en el directorio .ssh.

Antes de conectarte a un host remoto, copia la clave pública a ese host utilizando el comando ssh-copy-id:

  • ssh-copy-id -i /home/alex/.ssh/id_rsa.pub alex@166.1.227.189

Se te pedirá que introduzcas la contraseña del usuario remoto una sola vez. Después, la clave pública se añadirá al host remoto y podrás iniciar sesión sin contraseña:

  • ssh alex@166.1.227.189

Si no se solicita ninguna contraseña, la autenticación basada en claves está funcionando correctamente.

Deshabilitar la autenticación por contraseña
Copiar enlace

Dado que las contraseñas no son seguras, se recomienda deshabilitar la autenticación por contraseña y utilizar únicamente el acceso basado en claves. Para ello, edita el archivo de configuración del servidor SSH:

  • nano /etc/ssh/sshd_config

Busca la línea PasswordAuthentication y cambia su valor a no:

  • PasswordAuthentication no

Guarda los cambios y reinicia el servidor SSH:

  • systemctl restart ssh

Importante: Antes de deshabilitar la autenticación por contraseña, asegúrate de que la autenticación basada en claves funciona correctamente. De lo contrario, podrías quedarte sin acceso al servidor. Si esto ocurre, puedes restaurar la autenticación por contraseña mediante la consola web del servidor.

Cambiar el puerto SSH predeterminado
Copiar enlace

De forma predeterminada, el servidor SSH utiliza el puerto 22. Puedes cambiarlo editando el archivo sshd_config. Busca la línea Port, elimina el símbolo # y especifica un nuevo puerto (entre 1024 y 65535):

  • Port 2224

Guarda los cambios y reinicia el servidor SSH:

  • systemctl restart ssh

Para conectarte al servidor usando el nuevo puerto, utiliza la opción -p:

  • ssh alex@166.1.227.189 -p 2224

Deshabilitar el inicio de sesión como root
Copiar enlace

En algunas distribuciones, el inicio de sesión como root está permitido de forma predeterminada. Dado que el usuario root tiene privilegios completos del sistema, es más seguro deshabilitar este acceso. Busca la línea PermitRootLogin en el archivo sshd_config y establécela en no:

  • PermitRootLogin no

Guarda el archivo y reinicia el servidor SSH:

  • systemctl restart ssh

Permitir o denegar usuarios específicos
Copiar enlace

Puedes restringir el acceso SSH a usuarios específicos editando el archivo sshd_config con los siguientes parámetros:

AllowUsers: especifica qué usuarios pueden conectarse mediante SSH. Por ejemplo:

  • AllowUsers test admin

DenyUsers: especifica qué usuarios tienen prohibido el acceso SSH. Por ejemplo:

  • DenyUsers nginx websrv

Para aplicar los cambios, reinicia el servidor SSH:

  • systemctl restart ssh

Conclusión
Copiar enlace

SSH es una herramienta indispensable para conectarse a servidores remotos. Además del cifrado integrado, puedes reforzar la seguridad de tu servidor SSH configurándolo correctamente, por ejemplo, deshabilitando la autenticación por contraseña y limitando el acceso a usuarios específicos.