Cómo mantener vivas las conexiones SSH

Si sos administrador y usás SSH para conectarte con otros sistemas, te habrá ocurrido más de una vez que después de un tiempo la conexión se cae y hay que volver a conectar, con la consiguiente pérdida de información.


Este “truco” es ultra-conocido por cualquier administrador de sistemas, pero tal vez alguno de Uds. no lo conozca.

La idea consiste en que el servidor obligue al cliente a enviar un paquete para mantener la conexión abierta (lo que se conoce normalmente como keep-alive) y se configura en el servidor SSH al que nos conectemos modificando el archivo /etc/ssh/sshd_config y añadiéndole estas dos líneas a la configuración del demonio ssh:

TCPKeepAlive yes
ClientAliveInterval 60

Con esto, tan solo nos queda reiniciar tranquilamente el demonio ssh y al conectar, ya podremos dejar la sessión abierta sin miedo a que nos desconecte.

Otra opción posible es utilizar una herramienta llamada autossh. Para instalarlo en Ubuntu y derivados basta con ejecutar:

sudo apt-get install autossh

En el caso de que queramos usarlo de manera simple, ya podriamos ejecutar:

autossh usuario_remoto@host_remoto

Fuente: Sinologic


8 comentarios, deja el tuyo

Deja tu comentario

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

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.

  1.   heberth ardila dijo

    buen aporte…

  2.   Gaspar Fernández dijo

    Anda justo hace cuatro días escribí algo muy parecido en mi blog. Buena idea lo del autossh: http://totaki.com/poesiabinaria/2012/08/solucionar-problema-con-timeouts-y-broken-pipes-con-ssh-y-scp/

  3.   Simón dijo

    La fuente de este artículo es antigua porque «Keepalive» ya no existe como parámetro de configuración de SSH.

  4.   nacho dijo

    Algun cliente ssh para android que recomiendes?

  5.   nacho dijo

    algun cliente que ssh recomiendes para android?

  6.   krafty dijo

    Puede ser que el archivo se llame ssh_config y no sshd_config?

  7.   Fede Diaz dijo

    y si aun así no puedes evitar caerte por que estás bajo una conexión mala o algo así, inicia sesión y utiliza screen para desvincular tu PID de sesión con tu PID de conexión.

  8.   Desmestres3 dijo

    ¡Buen aporte!

    Si no se tiene acceso al servidor SSH, se puede implementar en el lado cliente, con Putty o desde Linux.

    Con putty:

    «Connection», «Sending of null packets to keep session active», «Seconds between keepalives» e introducir un número.

    Marcar también la opción:

    «Enable TCP keepalives (SO_KEEPALIVE option).

    Fuente: http://www.sysadmit.com/2016/02/linux-y-vmware-ssh-evitar-desconexion.html