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!.

Responder a anacondaweb Cancelar la 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.