Tutoriales

Cierre de sesión automático de usuarios inactivos después de un cierto período de tiempo en Linux

Este breve tutorial explica tres formas diferentes de cerrar la sesión automáticamente a los usuarios inactivos después de un cierto período de tiempo en sistemas Linux y similares a Unix.

Imagina este escenario. Usted administra un servidor compartido al que acceden regularmente muchos usuarios de todos los sistemas de la red.

Existe la posibilidad de que algunos usuarios olviden cerrar la sesión y dejar la sesión abierta. Es peligroso dejar una sesión de usuario abierta y algunos usuarios pueden abusar de ella intencionalmente.

¿Verificaría manualmente todos y cada uno de los sistemas para ver si los usuarios se han desconectado o no? ¡No es necesario! Además, es una tarea que consume mucho tiempo cuando hay cientos de computadoras en su red.

En su lugar, puede hacer que un usuario cierre automáticamente la sesión de una sesión local o SSH después de un período de inactividad.

Cerrar sesión automáticamente a los usuarios inactivos en Linux

Podemos cerrar sesión automáticamente en las sesiones de usuarios inactivos después de un cierto período de tiempo de tres formas. Veamos el primer método.

Método 1:

Para editar ~/.bashrc o ~/.bash_profile Expediente:

$ nano ~/.bashrc

O,

$ nano ~/.bash_profile

Al final, agregue la siguiente línea:

TMOUT=100

Configurar el valor del tiempo de espera del usuario en Linux

Esto hace que el usuario cierre la sesión automáticamente después de 100 segundos de inactividad. Puede definir este valor como desee. prensa ESC y escriba :wq para guardar y cerrar el archivo.

Aplique los cambios ejecutando el siguiente comando:

$ source ~/.bashrc

O,

$ source ~/.bash_profile

Ahora deje la sesión inactiva durante 100 segundos. Después de 100 segundos de inactividad, verá el siguiente mensaje y el usuario cerrará automáticamente la sesión.

timed out waiting for input: auto-logout
Connection to 192.168.122.181 closed.
Cerrar sesión automáticamente a los usuarios inactivos en Linux

Cerrar sesión automáticamente a los usuarios inactivos en Linux

Esta configuración puede ser cambiada fácilmente por el usuario. Porque, ~/.bashrc El archivo pertenece al propio usuario.

Para cambiar o eliminar la configuración del tiempo de espera, simplemente elimine las líneas agregadas anteriormente y aplique los cambios ejecutando el siguiente comando:

$ source ~/.bashrc

Alternativamente, el usuario puede desactivar esto ejecutando los siguientes comandos:

$ export TMOUT=0

O,

$ unset TMOUT

Debido a que la configuración del tiempo de espera se almacena en la propia ~/.bashrc Archivo, puede omitirlo fácilmente simplemente eliminando la línea. Si desea evitar que el usuario cambie la configuración, siga el segundo método.

Método 2:

registrarse como root Usuario.

Crea un nuevo archivo llamado "autologout.sh".

# vi /etc/profile.d/autologout.sh

Agrega las siguientes líneas:

TMOUT=100
readonly TMOUT
export TMOUT

Guarde y cierre el archivo.

Hágalo ejecutable con el comando:

# chmod +x /etc/profile.d/autologout.sh

Cierre la sesión o reinicie su sistema para que los cambios surtan efecto.

El usuario inactivo se desconecta automáticamente después de 100 segundos. El usuario normal no puede cambiar esta configuración incluso si desea permanecer conectado a la sesión. Se expulsan exactamente después de 100 segundos.

Estos dos métodos se aplican tanto a la sesión local como a la sesión remota, es decir, para los usuarios que inician sesión localmente o los usuarios que inician sesión desde un sistema remoto a través de SSH.

En el siguiente método veremos cómo cerrar sesión automáticamente solo las sesiones SSH inactivas, no las sesiones locales.

Método 3:

Con este método, solo haremos que los usuarios de la sesión SSH cierren la sesión después de un cierto período de inactividad.

Para editar /etc/ssh/sshd_config Expediente:

$ sudo vi /etc/ssh/sshd_config

Agregue / cambie las siguientes líneas:

ClientAliveInterval 100
ClientAliveCountMax 0

prensa ESC Clave y tipo :wq para guardar y cerrar este archivo. Reinicie el servicio sshd para que los cambios surtan efecto.

$ sudo systemctl restart sshd

Ahora establezca una conexión SSH a este sistema desde un sistema remoto. Después de 100 segundos, la sesión ssh se cerrará automáticamente y verá el siguiente mensaje:

$ Connection to 192.168.122.181 closed by remote host.
Connection to 192.168.122.181 closed.

Cualquiera que acceda a este sistema desde un sistema remoto a través de SSH se cerrará automáticamente inmediatamente después de 100 segundos de inactividad.

Publicaciones relacionadas

Deja una respuesta

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

Botón volver arriba