Cómo Solucionar el Error 'Connection Refused' en SSH en Linux de Forma Definitiva

Cómo Solucionar el Error 'Connection Refused' en SSH en Linux de Forma Definitiva
Anuncio relacionado

Introducción al Error Connection Refused en SSH

Uno de los problemas más frustrantes para los administradores de sistemas y desarrolladores que trabajan con servidores Linux es encontrarse con el mensaje ssh: connect to host [IP] port 22: Connection refused al intentar conectarse de forma remota. Este error indica que la máquina destino ha respondido activamente al intento de conexión denegándola, lo que suele estar relacionado con fallos en el servicio SSH, configuraciones de red o bloqueos de seguridad.

Causas Principales del Error SSH en Linux

Antes de aplicar cualquier solución, es fundamental entender por qué se produce este fallo en distribuciones como Ubuntu, Debian o CentOS:

  • El servicio SSH (OpenSSH Server) no está instalado o se encuentra detenido en el servidor remoto.
  • El demonio SSH está configurado para escuchar en un puerto diferente al puerto estándar 22.
  • Un cortafuegos (Firewalld, UFW o iptables) está bloqueando las conexiones entrantes al puerto SSH.
  • Existen problemas en la red o la dirección IP de destino es incorrecta.

Método 1: Comprobar e Iniciar el Servicio SSH

El primer paso consiste en verificar si el servidor SSH está activo en la máquina remota. Si tienes acceso físico o mediante una consola de recuperación (como VNC o IPMI), ejecuta los siguientes comandos:

  1. Comprueba el estado actual del servicio con systemctl:
    sudo systemctl status ssh (en Ubuntu/Debian) o sudo systemctl status sshd (en CentOS/RHEL).
  2. Si el servicio está detenido, inícalo inmediatamente con:
    sudo systemctl start ssh
  3. Configura el servicio para que se ejecute automáticamente tras reiniciar el servidor:
    sudo systemctl enable ssh

Método 2: Verificar el Puerto y la Configuración del Servidor

A veces, el puerto predeterminado 22 ha sido modificado por motivos de seguridad en el archivo de configuración. Sigue estos pasos para revisarlo:

  1. Abre el archivo de configuración de SSH utilizando un editor de texto con privilegios de superusuario:
    sudo nano /etc/ssh/sshd_config
  2. Busca la línea que comienza por #Port 22 o Port [número]. Asegúrate de que no esté comentada y verifica qué número de puerto utiliza.
  3. Si has realizado algún cambio, guarda el archivo y reinicia el demonio SSH para aplicar la nueva configuración:
    sudo systemctl restart ssh

Método 3: Configurar Correctamente el Cortafuegos (UFW / Firewalld)

Si el servicio está activo pero el cortafuegos bloquea el tráfico, la conexión seguirá siendo rechazada. Debes permitir explícitamente el tráfico SSH:

  1. Si utilizas UFW (Ubuntu/Debian), habilita el puerto o el perfil SSH con el siguiente comando:
    sudo ufw allow ssh o sudo ufw allow 22/tcp
  2. Recarga las reglas del cortafuegos para aplicar los cambios:
    sudo ufw reload
  3. Si tu distribución utiliza Firewalld (CentOS/Fedora), ejecuta:
    sudo firewall-cmd --permanent --add-service=ssh y luego sudo firewall-cmd --reload
Anuncio
Seguir Leyendo

Guías y Soluciones Relacionadas

Windows Apps Juegos
Windows

Cómo Solucionar el Error Critical Process Died en Windows 10 y 11 Definitivamente

Soluciona el temido error de pantalla azul Critical Process Died en Windows con nuestra guía definitiva. Recupera la estabilidad de tu PC ahora.

Leer guía completa →
Mac

Cómo Solucionar el Error 'La Aplicación No Se Puede Abrir Porque Apple No Puede Verificar Si Tiene Malware' en Mac

¿Tu Mac bloquea una aplicación legítima al intentar abrirla? Te mostramos cómo sortear las restricciones de seguridad de macOS de forma rápida.

Leer guía completa →
Mac

Cómo Solucionar el Error 'Imposible Verificar el Desarrollador' en Mac de Forma Definitiva

Descubre por qué macOS bloquea ciertas aplicaciones y cómo puedes abrirlas de forma segura evitando restricciones de seguridad.

Leer guía completa →