Maison >Tutoriel système >Linux >Introduction de méthodes de déconnexion automatique sous Linux pour empêcher les utilisateurs d'être inactifs pendant de longues périodes
Imaginons un tel scénario. Vous disposez d'un serveur auquel de nombreux utilisateurs accèdent fréquemment à partir de différents systèmes du réseau. Il est possible que certains utilisateurs oublient de se déconnecter de la session en laissant celle-ci ouverte. Nous savons tous à quel point il est dangereux de laisser une session utilisateur connectée. Certains utilisateurs peuvent l'utiliser pour faire intentionnellement des choses qui endommagent le système. Et vous, en tant qu'administrateur système, irez-vous sur chaque système pour vérifier si l'utilisateur s'est déconnecté ? En fait, c’est totalement inutile. Et s’il y a des centaines ou des milliers de machines sur le réseau, cela prend trop de temps. Cependant, vous pouvez demander aux utilisateurs de se déconnecter automatiquement s'ils sont inactifs sur la machine ou sur la session SSH pendant un certain temps. Ce tutoriel vous apprendra comment procéder sur un système de type Unix. Ce n'est pas difficile du tout. Fais-le avec moi.
Mise en œuvre de la déconnexion automatique des utilisateurs inactifs après un certain temps sous Linux
Il existe trois façons d’y parvenir. Examinons d'abord la première méthode.
Méthode 1 :
Modifiez le fichier ~/.bashrc ou ~/.bash_profile :
$ vi ~/.bashrc
ou,
$ vi ~/.bash_profile
Ajoutez-y les lignes suivantes :
TMOUT=100
Cela déconnectera automatiquement l'utilisateur après 100 secondes d'inactivité. Vous pouvez définir cette valeur selon vos besoins. Enregistrez et fermez le fichier.
Exécutez la commande suivante pour que les modifications prennent effet :
$ source ~/.bashrc
ou,
$ source ~/.bash_profile
Maintenant, laissez la session inactive pendant 100 secondes. Après 100 secondes d'inactivité, vous verrez le message ci-dessous et l'utilisateur se déconnectera automatiquement de la session.
timed out waiting for input: auto-logout Connection to 192.168.43.2 closed.
Ce paramètre peut être facilement modifié par l'utilisateur. Parce que le fichier ~/.bashrc appartient à l'utilisateur lui-même.
Pour modifier ou supprimer le paramètre de délai d'attente, supprimez simplement la ligne ajoutée ci-dessus et exécutez la commande source ~/.bashrc pour que la modification prenne effet.
De plus, les utilisateurs peuvent également exécuter la commande suivante pour désactiver le délai d'attente :
$ export TMOUT=0
ou,
$ unset TMOUT
Si vous souhaitez empêcher les utilisateurs de modifier ce paramètre, utilisez plutôt la méthode suivante.
Méthode 2 :
Connectez-vous en tant qu'utilisateur root.
Créez un nouveau fichier appelé autologout.sh.
# vi /etc/profile.d/autologout.sh
Ajoutez ce qui suit :
TMOUT=100 readonly TMOUT export TMOUT
Enregistrez et quittez le fichier.
Ajoutez-y des autorisations exécutables :
# chmod +x /etc/profile.d/autologout.sh
Maintenant, déconnectez-vous ou redémarrez le système. Les utilisateurs inactifs seront automatiquement déconnectés après 100 secondes. Les utilisateurs ordinaires ne peuvent pas modifier cette configuration même s'ils souhaitent conserver la connexion de session. Ils forceront l'arrêt après 100 secondes.
Les deux méthodes fonctionnent à la fois pour les sessions locales et distantes (c'est-à-dire les utilisateurs connectés localement et les utilisateurs connectés via SSH sur le système distant). Voyons comment se déconnecter automatiquement uniquement des sessions SSH inactives sans se déconnecter automatiquement des sessions locales.
Méthode 3 :
De cette façon, l’utilisateur de la session SSH ne se déconnectera automatiquement qu’après une période d’inactivité.
Modifier le fichier /etc/ssh/sshd_config :
$ sudo vi /etc/ssh/sshd_config
Ajoutez/modifiez les lignes suivantes :
ClientAliveInterval 100 ClientAliveCountMax 0
Enregistrez et quittez le fichier. Redémarrez le service sshd pour que les modifications prennent effet.
$ sudo systemctl restart sshd
Maintenant, connectez-vous au système distant via ssh. Après 100 secondes, la session ssh se fermera automatiquement et vous verrez le message suivant :
$ Connection to 192.168.43.2 closed by remote host. Connection to 192.168.43.2 closed.
Désormais, toute personne qui se connecte à ce système via SSH à partir d'un système distant se déconnectera automatiquement après 100 secondes d'inactivité.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!