Título de post muy largo para algo tan sencillo. Dependiendo del tipo de servidor sshd y su configuración, o de las conexiones intermedias entre tu máquina y el destino final, tras un tiempo de inactividad la sesión ssh puede cortarse, lo que es bastante incómodo porque tienes que volver a hacer login, volver al directorio en el que estabas, etc, etc… y tu trabajo se ve interrumpido.
La solución pasa por editar el archivo de configuración del cliente local ssh (que en linux estará generalmente en /etc/ssh/ssh_config, y en Mac estará en /etc/ssh_config). Ahí tendremos que añadir el siguiente texto:
ServerAliveInterval 60
Donde 60 es el número de segundos que queremos que pase entre cada aviso por parte del cliente de que seguimos vivos, y no queremos que se cierre la conexión. Esta línea debe añadirse dentro de la sección Host *, de modo que se aplicará para la conexión con cualquier servidor:
Host *
ServerAliveInterval 60
O puede personalizarse para un servidor concreto, con:
Host *hostname.com
ServerAliveInterval 60
Por supuesto, todo esto puede hacerse únicamente para un único usuario, editando tu archivo $HOME/.ssh/ssh_config, pero como yo suelo ser el usuario único de mis máquinas, he optado por dejarlo como configuración general para cualquier usuario.
Solución encontrada vía The how-to geek.
Etiquetas: administración, Linux, OS X, ssh