GNU/Linux >> Linux Esercitazione >  >> Linux

Come disconnettersi automaticamente dagli utenti inattivi dopo un periodo di tempo in Linux

Questo breve tutorial spiega tre diversi modi per disconnettersi automaticamente dagli utenti inattivi dopo un determinato periodo di tempo in sistemi simili a Linux e Unix.

Immagina questo scenario. Stai gestendo un server condiviso a cui accedono regolarmente molti utenti da tutti i sistemi della rete.

Ci sono possibilità che qualche utente dimentichi di disconnettersi dalla sua sessione e lasci aperta la sessione. Lasciare aperta una sessione utente è pericoloso e alcuni utenti potrebbero abusarne intenzionalmente.

Controlleresti manualmente ogni singolo sistema per verificare se gli utenti si sono disconnessi o meno? Non è necessario! Inoltre, è un'attività che richiede molto tempo se ci sono centinaia di macchine nella tua rete.

Invece, puoi fare in modo che un utente si disconnetta automaticamente da una sessione locale o SSH dopo un particolare periodo di inattività.

Disconnessione automatica degli utenti inattivi in ​​Linux

Possiamo disconnettere automaticamente le sessioni utente inattive dopo un certo tempo in tre modi. Vediamo il primo metodo.

Metodo 1:

Modifica ~/.bashrc o ~/.bash_profile file:

$ nano ~/.bashrc

Oppure,

$ nano ~/.bash_profile

Aggiungi la seguente riga alla fine:

TMOUT=100

Configura il valore di timeout dell'utente in Linux

In questo modo l'utente si disconnette automaticamente dopo un'inattività di 100 secondi. Puoi definire questo valore a tuo piacimento. Premi ESC e digita :wq per salvare il file e chiuderlo.

Applica le modifiche eseguendo il comando seguente:

$ source ~/.bashrc

Oppure,

$ source ~/.bash_profile

Ora, lascia la sessione inattiva per 100 secondi. Dopo un'inattività di 100 secondi, vedrai il seguente messaggio e l'utente verrà automaticamente disconnesso dalla sessione.

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

Disconnessione automatica degli utenti inattivi in ​​Linux

Questa impostazione può essere facilmente modificata dall'utente. Perché, ~/.bashrc il file è di proprietà dell'utente stesso.

Per modificare o eliminare le impostazioni di timeout, è sufficiente eliminare le righe aggiunte sopra e applicare le modifiche eseguendo il seguente comando:

$ source ~/.bashrc

In alternativa, l'utente può disabilitarlo eseguendo i seguenti comandi:

$ export TMOUT=0

Oppure,

$ unset TMOUT

Poiché l'impostazione del timeout è memorizzata nel ~/.bashrc di proprietà dell'utente file, lui/lei può aggirarlo facilmente semplicemente cancellando la riga. Se vuoi impedire all'utente di modificare le impostazioni, segui il secondo metodo.

Metodo 2:

Accedi come root utente.

Crea un nuovo file chiamato "autologout.sh" .

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

Aggiungi le seguenti righe:

TMOUT=100
readonly TMOUT
export TMOUT

Salva e chiudi il file.

Rendilo eseguibile usando il comando:

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

Esci o riavvia il sistema per rendere effettive le modifiche.

L'utente inattivo verrà disconnesso automaticamente dopo 100 secondi. L'utente normale non può modificare queste impostazioni anche se desidera rimanere connesso alla sessione. Verranno espulsi esattamente dopo 100 secondi.

Questi due metodi sono applicabili sia per la sessione locale che per la sessione remota, ad esempio gli utenti che hanno effettuato l'accesso localmente o gli utenti che hanno effettuato l'accesso da un sistema remoto tramite SSH.

Nel prossimo metodo, vedremo come disconnettersi automaticamente solo dalle sessioni SSH inattive, non dalle sessioni locali.

Metodo 3:

Con questo metodo, faremo uscire gli utenti della sessione SSH solo dopo un determinato periodo di inattività.

Modifica /etc/ssh/sshd_config file:

$ sudo vi /etc/ssh/sshd_config

Aggiungi/modifica le seguenti righe:

ClientAliveInterval 100
ClientAliveCountMax 0

Premi ESC digitare e digitare :wq per salvare e chiudere questo file. Riavvia il servizio sshd per rendere effettive le modifiche.

$ sudo systemctl restart sshd

Ora, ssh su questo sistema da un sistema remoto. Dopo 100 secondi, la sessione ssh verrà chiusa automaticamente e vedrai il seguente messaggio:

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

D'ora in poi, chiunque acceda a questo sistema da un sistema remoto tramite SSH verrà automaticamente disconnesso dopo un'inattività di 100 secondi.


Linux
  1. Come aggiungere utenti a un gruppo in Linux

  2. Come creare più account utente in Linux

  3. Come trovare tutti gli utenti Sudo in Linux

  4. Come gestire gli utenti con useradd in Linux

  5. Come lavorare con utenti e gruppi in Linux

Come installare l'applicazione di monitoraggio del tempo basata sul Web Kimai in Linux

Come cambiare utente su Linux

Disconnetti automaticamente gli utenti inattivi dal sistema Linux

Come disconnettere un utente da SSH in Linux

Come creare e gestire nuovi utenti su Linux

Come creare/aggiungere utenti in Linux