GNU/Linux >> Tutoriales Linux >  >> Linux

CentOS/RHEL:cómo configurar el tiempo de espera inactivo de la sesión (tiempo de espera de inactividad) para el cierre de sesión automático de ssh

Hay dos opciones relacionadas con la inactividad de ssh en /etc/ssh/sshd_config archivo:

ClientAliveInterval
ClientAliveCountMax

Entonces, el valor del tiempo de espera se calcula multiplicando ClientAliveInterval con ClientAliveCountMax.

timeout interval = ClientAliveInterval * ClientAliveCountMax

El significado de los dos parámetros se puede encontrar en la página man de sshd_config :

# man sshd_config
     ClientAliveCountMax
             Sets the number of client alive messages (see below) which may be sent without sshd(8) receiving any messages back from the client. If this threshold is reached while client alive messages are being sent, sshd will disconnect the client, terminating the session. It is important to note that the use of client alive messages is very different from TCPKeepAlive (below). The client alive messages are sent through the encrypted channel and therefore will not be spoofable. The TCP keepalive option enabled by TCPKeepAlive is spoofable.  The client alive mechanism is valuable when the client or server depend on knowing when a connection has become inactive. The default value is 3. If ClientAliveInterval (see below) is set to 15, and ClientAliveCountMax is left at the default, unresponsive SSH clients will be disconnected after approximately 45 seconds. This option applies to protocol version 2 only.

     ClientAliveInterval
             Sets a timeout interval in seconds after which if no data has been received from the client, sshd(8) will send a message through the encrypted channel to request a response from the client. The default is 0, indicating that these messages will not be sent to the client. This option applies to protocol version 2 only.

Existen 2 métodos para configurar el tiempo de espera de inactividad. Por ejemplo, en esta publicación configuraremos un intervalo de cierre de sesión automático de 10 minutos.

Método 1

1. Configure el valor de tiempo de espera en el archivo /etc/ssh/sshd_config con los valores de los parámetros a continuación.

# vi /etc/ssh/sshd_config
ClientAliveInterval 5m          # 5 minutes
ClientAliveCountMax 2           # 2 times

2. Reinicie el servicio ssh después de configurar los valores.

# service sshd restart

Esto haría que el tiempo de espera de la sesión se agotara en 10 minutos, ya que el valor de ClientAliveCountMax se multiplica por el valor de ClientAliveInterval.

Método 2

1. Puede establecer el valor de ClientAliveCountMax en 0 y el valor de ClientAliveInterval en 10m para lograr lo mismo.

# vi /etc/ssh/sshd_config
ClientAliveInterval 10m          # 10 minutes
ClientAliveCountMax 0            # 0 times

2. Reinicie el servicio ssh después de configurar los valores.

# service sshd restart

Diferencia entre el método 1 y el método 2

Hay una pequeña diferencia entre estos dos métodos. Para el primer método, sshd enviará mensajes, llamados Client Alive Messages aquí, a través del canal encriptado para solicitar una respuesta del cliente si el cliente está inactivo durante cinco minutos. El demonio sshd enviará estos mensajes como máximo dos veces. Si se alcanza este umbral mientras se envían los mensajes de Client Alive, sshd desconectará al cliente.

Pero para el segundo método, sshd no enviará mensajes activos al cliente y finalizará la sesión directamente si el cliente está inactivo durante 10 minutos.


Linux
  1. Cómo configurar claves SSH en CentOS 8

  2. Cómo configurar un puerto separado para SSH y SFTP en CentOS/RHEL

  3. Cómo cambiar la configuración de tiempo de espera predeterminado para la sesión de Telnet en CentOS/RHEL

  4. CentOS/RHEL:cómo ejecutar un script o comando cuando cualquier usuario cierra la sesión de ssh

  5. CentOS/RHEL:Cómo deshabilitar ssh para usuarios no root (permitiendo ssh solo para usuarios root)

Cómo configurar el inicio de sesión sin contraseña SSH en CentOS 8 / RHEL 8

Cómo configurar la autenticación multifactor para SSH en Linux

Cómo configurar SSH en CentOS y RHEL

Cómo configurar HAProxy como Load Balancer para Nginx en CentOS 7

Cómo instalar Zenoss Core para monitoreo en Linux CentOS / RHEL

Cómo configurar el tiempo de espera en la masilla del cliente SSH