Cómo aumentar el tiempo de espera de la conexión SSH en Linux


Los tiempos de espera de SSH como resultado de la inactividad pueden ser bastante irritantes. Esto generalmente lo obliga a reiniciar la conexión y comenzar de nuevo.

Afortunadamente, puede aumentar fácilmente el límite de tiempo de espera de SSH y mantener viva su sesión de SSH incluso después de un poco de inactividad. Esto sucede cuando el servidor o el cliente envían paquetes nulos al otro sistema para mantener viva la sesión.

Lectura relacionada: Cómo proteger y fortalecer el servidor OpenSSH

Exploremos ahora cómo puede aumentar el tiempo de espera de la conexión SSH en Linux.

Aumentar el tiempo de espera de la conexión SSH

En el servidor, diríjase al archivo de configuración /etc/ssh/sshd_config .

$ sudo vi /etc/ssh/sshd_config

Desplácese y localice los siguientes parámetros:

#ClientAliveInterval 
#ClientAliveCountMax

El parámetro ClientAliveInterval especifica el tiempo en segundos que el servidor esperará antes de enviar un paquete nulo al sistema cliente para mantener viva la conexión.

Por otro lado, el parámetro ClientAliveCountMax define el número de mensajes activos del cliente que se envían sin recibir ningún mensaje del cliente. Si se alcanza este límite mientras se envían los mensajes, el demonio sshd cerrará la sesión, terminando efectivamente la sesión ssh.

El valor del tiempo de espera viene dado por el producto de los parámetros anteriores, es decir

Timeout value = ClientAliveInterval * ClientAliveCountMax

Por ejemplo, digamos que ha definido sus parámetros como se muestra:

ClientAliveInterval  1200
ClientAliveCountMax 3

El valor del tiempo de espera será 1200 segundos * 3 u003d 3600 segundos. Esto equivale a 1 hora, lo que implica que su sesión ssh permanecerá activa durante un tiempo de inactividad de 1 hora sin caer.

Alternativamente, puede lograr el mismo resultado especificando solo el parámetro ClientAliveInterval .

ClientAliveInterval  3600

Una vez hecho esto, vuelva a cargar el demonio OpenSSH para que los cambios surtan efecto.

$ sudo systemctl reload sshd

Como medida de seguridad de SSH, siempre es recomendable no establecer el valor de tiempo de espera de SSH en un valor enorme. Esto es para evitar que alguien pase y se apropie de su sesión cuando esté fuera por un período de tiempo prolongado. Y eso es todo por este tema.