Para aquellos que se preguntan, @edward-coast
Si desea configurar el mantenimiento activo para el servidor, agréguelo a /etc/ssh/sshd_config
:
ClientAliveInterval 60
ClientAliveCountMax 2
ClientAliveInterval :Establece un intervalo de tiempo de espera en segundos después del cual, si no se han recibido datos del cliente, sshd(8) enviará un mensaje a través del canal encriptado para solicitar una respuesta del cliente.
ClientAliveCountMax :Establece el número de mensajes activos del cliente (ver más abajo) que se pueden enviar sin que sshd(8) reciba ningún mensaje del cliente. Si se alcanza este umbral mientras se envían mensajes de cliente activo, sshd desconectará al cliente y terminará la sesión.
El demonio ssh (sshd), que se ejecuta en el lado del servidor, cierra la conexión desde el lado del servidor si el cliente se queda en silencio (es decir, no envía información). Para evitar la pérdida de conexión, indique al cliente ssh que envíe una señal de señal de vida al servidor de vez en cuando.
La configuración para esto está en el archivo $HOME/.ssh/config
, cree el archivo si no existe (el archivo de configuración no debe ser legible por todo el mundo, así que ejecute chmod 600 ~/.ssh/config
después de crear el archivo). Para enviar la señal cada p. cuatro minutos (240 segundos) al host remoto, coloque lo siguiente en ese archivo de configuración:
Host remotehost
HostName remotehost.com
ServerAliveInterval 240
Para habilitar el envío de una señal de mantenimiento de conexión para todos los hosts, coloque el siguiente contenido en el archivo de configuración:
Host *
ServerAliveInterval 240
Quería una solución única:
ssh -o ServerAliveInterval=60 [email protected]
Lo almacenó en un alias:
alias sshprod='ssh -v -o ServerAliveInterval=60 [email protected]'
Ahora puede conectarse así:
[email protected]:~$ sshprod