Inicio » Cómo solucionar el error Connection Timeout en conexiones SSH por reglas de firewall
Sistemas y Servidores

Cómo solucionar el error Connection Timeout en conexiones SSH por reglas de firewall

El Diagnóstico Rápido

El error de tiempo de espera agotado en el puerto 22 (ssh: connect to host ... port 22: Connection timed out) ocurre cuando el cortafuegos del servidor destino (generalmente IPTables o UFW en Ubuntu/Debian) bloquea o descarta silenciosamente los paquetes de red entrantes en el puerto 22, impidiendo la autenticación del cliente.

🚀 Cómo solucionar el error paso a paso

Paso 1: Diagnosticar si el puerto SSH está bloqueado o cerrado

Intenta realizar una comprobación directa de red hacia el puerto del servidor desde tu consola de comandos local para verificar si responde a peticiones TCP:

BASH
# Comprobar la respuesta del puerto 22 (SSH) en tu servidor
nc -zv 192.168.1.100 22

(Si la salida indica "Connection timed out" o no devuelve nada, el puerto está bloqueado en el firewall local o de red).

Paso 2: Habilitar el tráfico SSH en UFW (Uncomplicated Firewall)

Si tu servidor utiliza UFW como front-end de firewall, habilita explícitamente el acceso remoto seguro y recarga las directivas del kernel:

BASH
# Permitir conexiones entrantes en el puerto de SSH por defecto
sudo ufw allow 22/tcp

# Habilitar el cortafuegos si estaba inactivo y recargar reglas
sudo ufw enable && sudo ufw reload

Paso 3: Configurar reglas explícitas en IPTables

Si trabajas en sistemas sin UFW o necesitas mayor granularidad en IPTables, abre el puerto SSH de forma directa en tu cadena de entrada:

BASH
# Aceptar paquetes TCP de entrada para el puerto 22
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT

# Guardar las reglas para que persistan tras reiniciar el servidor
sudo iptables-save | sudo tee /etc/iptables/rules.v4

Consejo de Prevención

Prácticas de seguridad recomendadas:

  • No expongas el puerto SSH predeterminado (22) de forma abierta a cualquier dirección IP de Internet (0.0.0.0/0). Hacer esto saturará tus registros de autenticación con ataques automatizados de fuerza bruta en cuestión de minutos; en su lugar, limita el acceso únicamente al rango de direcciones IP de tu red de trabajo o VPN, o cambia el puerto SSH de escucha a uno no estándar en el archivo /etc/ssh/sshd_config.