Receta rápida: evitar desconexión por timeout en ssh

Problema: El servidor ssh al que te conectas cierra la conexión cuando detecta inactividad del usuario. Como tienes varias ventanas y tareas abiertas a la vez, ese timeout hace que la sesión ssh se quede bloqueada cada dos por tres.

Solución: crear un fichero ~/.ssh/config con el contenido que indico a continuación. Ese fichero se leerá cada vez que iniciemos una conexión ssh con cualquier host. Lo que indicamos es que queremos lanzar un paquete a modo de señal cada 120 segundos (2 minutos), haciendo saber que seguimos conectados y que no queremos que nos corte la conexión. Si por cualquier razón el servidor no respondiera tras 3 intentos de envío de señal (2*3 = 6 minutos), se cancelará la conexión.

cat ~/.ssh/config 
Host *
    ServerAliveInterval 120
    ServerAliveCountMax 3

7 comentarios en «Receta rápida: evitar desconexión por timeout en ssh»

  1. Excelente APORTE!. Yo uso el PAC SSH Manager y no he encontrado esa opcion exactamente solo me ofrece enviar caracteres y cosas asi y es una solucion que yo no queria por ningun motivo.
    Hice mi cambio de Win a Linux hace varios años pero en el trabajo igual ocupo win, por pega, y ahi ocupo para ssh el Xshell4 que tiene una opcion para mantener la conexion abierta. Tambien lei por ahi del protocolo que usa el Secure CRT llamado «no-op» que en algun momento tambien ocupe y solo me faltaba para linux.
    Te pasaste, muchas gracias por compartir esta informacion muy muy util.

    Saludos!.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.