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
Windows

Cómo Solucionar el Error de Pantalla Azul CRITICAL_PROCESS_DIED en Windows

La temida pantalla azul de la muerte con el código CRITICAL_PROCESS_DIED puede paralizar tu ordenador. Aprende a identificar las causas y repáralo fácilmente.

Leer guía completa →
Shopify

Cómo Solucionar el Error de Sincronización en la Pasarela de Pagos en Shopify de Forma Definitiva

Aprende a resolver los molestos fallos de sincronización en las pasarelas de pago de tu tienda Shopify. Recupera tus conversiones con este método.

Leer guía completa →
Desarrollo

Cómo Solucionar el Error CORS en JavaScript de Forma Definitiva

Descubre las causas principales del bloqueo por políticas de origen cruzado en JavaScript y aplica soluciones efectivas en tu servidor y cliente.

Leer guía completa →