Cómo Solucionar el Error 'Broken Pipe' en Conexiones SSH en Linux de Forma Definitiva

Cómo Solucionar el Error 'Broken Pipe' en Conexiones SSH en Linux de Forma Definitiva
Anuncio relacionado

¿Qué es el Error 'Broken Pipe' en SSH en Linux?

El error Write failed: Broken pipe es uno de los problemas más comunes a los que se enfrentan los administradores de sistemas y desarrolladores al trabajar con servidores remotos mediante SSH en entornos Linux. Este molesto fallo ocurre repentinamente cuando la conexión entre el cliente y el servidor se interrumpe, generalmente debido a un periodo de inactividad prolongado que provoca que un enrutador intermedio, un cortafuegos (firewall) o el propio servidor cierren el socket de red sin notificar adecuadamente a los extremos.

Causas Principales de la Desconexión SSH

  • Inactividad prolongada en la terminal que provoca que dispositivos de red intermedios descarten la sesión.
  • Configuración predeterminada de tiempo de espera (timeout) demasiado agresiva en el cliente o en el servidor OpenSSH.
  • Interrupciones temporales en la red local o inestabilidad en la conexión a internet.

Método 1: Configurar el KeepAlive en el Cliente SSH (A nivel de usuario)

La forma más rápida y efectiva de evitar que las conexiones inactivas mueran es configurar paquetes de mantenimiento de conexión (keepalive) directamente en tu archivo de configuración SSH local.

  1. Abre la terminal de tu distribución Linux.
  2. Edita o crea el archivo de configuración SSH para tu usuario usando tu editor favorito: nano ~/.ssh/config.
  3. Agrega las siguientes líneas al archivo para enviar una señal de pulso al servidor cada 60 segundos:
    Host *
    ServerAliveInterval 60
    ServerAliveCountMax 3
  4. Guarda los cambios (en Nano presiona Ctrl+O, Enter y luego Ctrl+X).
  5. Asegúrate de que los permisos del archivo sean correctos ejecutando: chmod 600 ~/.ssh/config.

Método 2: Configurar el Servidor SSH (A nivel global)

Si administras el servidor remoto y deseas solucionar el error Broken Pipe para todos los usuarios que se conectan a él, debes modificar la configuración del demonio SSH.

  1. Accede a tu servidor Linux mediante SSH.
  2. Abre el archivo de configuración global del servidor con privilegios de superusuario: sudo nano /etc/ssh/sshd_config.
  3. Busca y descomenta (o añade) las siguientes directivas:
    ClientAliveInterval 60
    ClientAliveCountMax 3
  4. Estas directivas indican al servidor que envíe un paquete nulo al cliente cada 60 segundos y, si no recibe respuesta tras 3 intentos, cierre la sesión limpiamente.
  5. Guarda el archivo y reinicia el servicio SSH para aplicar los cambios con el comando correspondiente a tu distro: sudo systemctl restart ssh o sudo systemctl restart sshd.
Anuncio
Seguir Leyendo

Guías y Soluciones Relacionadas

Windows Apps Juegos
Juegos

Cómo Solucionar el Error DXGI_ERROR_DEVICE_HUNG en Juegos de Forma Definitiva

¿Tus juegos se congelan y muestran el error DXGI_ERROR_DEVICE_HUNG? Aprende a identificar la causa y aplicar las soluciones más efectivas para recuperar la estabilidad.

Leer guía completa →
Windows

Cómo Solucionar el Error Código 43 en el Administrador de Dispositivos de Windows de Forma Definitiva

El error Código 43 en Windows indica que un dispositivo de hardware ha fallado o sus controladores presentan problemas. Aprende a solucionarlo fácilmente.

Leer guía completa →
Windows

Cómo Solucionar el Error DPC_WATCHDOG_VIOLATION en Windows de Forma Definitiva

El error DPC_WATCHDOG_VIOLATION provoca temidas pantallas azules en Windows. Aprende a identificar su causa y aplícate métodos efectivos para solucionarlo.

Leer guía completa →