GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo cerrar sesión automáticamente en usuarios inactivos después de un período de tiempo en Linux

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

Imagina este escenario. Está administrando un servidor compartido al que acceden regularmente muchos usuarios de todos los sistemas de la red.

Hay posibilidades de que algún usuario se olvide de cerrar la sesión y la deje abierta. Dejar una sesión de usuario abierta es peligroso y algunos usuarios pueden hacer mal uso de ella intencionalmente.

¿Verificaría manualmente todos y cada uno de los sistemas para verificar si los usuarios han cerrado sesión o no? ¡No es necesario! Además, es una tarea que consume bastante tiempo si hay cientos de máquinas en su red.

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

Cierre de sesión automático de usuarios inactivos en Linux

Podemos cerrar sesión automáticamente en sesiones de usuarios inactivos después de cierto tiempo de tres maneras. Veamos el primer método.

Método 1:

Editar ~/.bashrc o ~/.bash_profile archivo:

$ nano ~/.bashrc

O,

$ nano ~/.bash_profile

Agregue la siguiente línea al final:

TMOUT=100

Configure el valor de tiempo de espera del usuario en Linux

Esto hace que el usuario cierre sesión automáticamente después de una inactividad de 100 segundos. Puede definir este valor según su conveniencia. Presiona ESC y escribe :wq para guardar el archivo y cerrarlo.

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 una inactividad de 100 segundos, verá el siguiente mensaje y el usuario será automáticamente desconectado de la sesión.

timed out waiting for input: auto-logout
Connection to 192.168.122.181 closed.

Cierre de sesión automático de usuarios inactivos en Linux

Esta configuración puede ser modificada fácilmente por el usuario. Porque, ~/.bashrc El archivo es propiedad del propio usuario.

Para modificar 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 deshabilitar esto ejecutando los siguientes comandos:

$ export TMOUT=0

O,

$ unset TMOUT

Dado que la configuración de tiempo de espera se almacena en el ~/.bashrc propiedad del usuario 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:

Inicie sesión como root usuario.

Crea un nuevo archivo llamado "autologout.sh" .

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

Agregue las siguientes líneas:

TMOUT=100
readonly TMOUT
export TMOUT

Guarde y cierre el archivo.

Hágalo como ejecutable usando el comando:

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

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

El usuario inactivo se cerrará automáticamente después de 100 segundos. El usuario normal no puede cambiar esta configuración incluso si quisiera permanecer conectado a la sesión. Serán expulsados ​​exactamente después de 100 segundos.

Estos dos métodos son aplicables tanto para la sesión local como para la sesión remota, es decir, los usuarios que iniciaron sesión localmente o los usuarios que iniciaron 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 en las sesiones SSH inactivas, no en las sesiones locales.

Método 3:

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

Edite /etc/ssh/sshd_config archivo:

$ sudo vi /etc/ssh/sshd_config

Agregue/modifique las siguientes líneas:

ClientAliveInterval 100
ClientAliveCountMax 0

Presiona ESC clave y escriba :wq para guardar y cerrar este archivo. Reinicie el servicio sshd para aplicar los cambios.

$ sudo systemctl restart sshd

Ahora, 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.

A partir de ahora, quien acceda a este sistema desde un sistema remoto a través de SSH se desconectará automáticamente después de una inactividad de 100 segundos.


Linux
  1. Cómo agregar usuarios a un grupo en Linux

  2. Cómo crear varias cuentas de usuario en Linux

  3. Cómo encontrar todos los usuarios de Sudo en Linux

  4. Cómo administrar usuarios con useradd en linux

  5. Cómo trabajar con usuarios y grupos en Linux

Cómo instalar la aplicación de seguimiento de tiempo basada en web Kimai en Linux

Cómo cambiar de usuario en Linux

Cerrar sesión automáticamente de usuarios inactivos del sistema Linux

Cómo cerrar la sesión de un usuario fuera de SSH en Linux

Cómo crear y administrar nuevos usuarios en Linux

Cómo crear/agregar usuarios en Linux