Maison >Tutoriel système >Linux >Comment déconnecter les autres utilisateurs SSH sous Linux

Comment déconnecter les autres utilisateurs SSH sous Linux

WBOY
WBOYavant
2024-02-09 15:03:221341parcourir

Aujourd'hui, nous présenterons brièvement comment expulser les autres utilisateurs connectés au système via ssh.

在Linux中如何注销其他 SSH 用户

Mot pixelisé Linux fabriqué à partir de cubes, motif mosaïque

Si vous vous connectez à un système Linux distant via ssh, utilisez simplement la commande exit pour quitter ssh. Et si vous souhaitez déconnecter les autres utilisateurs connectés au système via ssh ?

Déconnectez-vous de l'utilisateur en session SSH

Tout d’abord, vérifiez la liste des utilisateurs connectés au système Linux. Il existe différentes manières d'y parvenir, nous utilisons ici la commande who, ainsi que l'option -u, qui affichera l'ID de processus de la session shell connectée au système :

who -u

Le résultat ressemble à ceci :

root@localhost:~# who -u
abhishek pts/0        2021-04-05 09:25 00:01       31970 (223.180.180.107)
prakash  pts/1        2021-04-05 09:26   .         32004 (223.180.180.107)
root     pts/2        2021-04-05 09:26   .         32039 (223.180.180.107)

Alors maintenant, disons que notre tâche consiste à expulser l'utilisateur prakash de la session ssh, dont l'ID de processus de la session shell est 32004. L'utilisateur sera déconnecté une fois terminé.

Pour ce faire, vous pouvez utiliser la commande kill pour envoyer un signal SIGHUP, qui est utilisé pour signaler que le terminal de l'utilisateur a été déconnecté, et peut également déconnecter efficacement tous les processus de la session du terminal de contrôle.

sudo kill -HUP 32004

Bien sûr, pour effectuer cette opération, vous devez être l'utilisateur root ou disposer des autorisations sudo.

在Linux中如何注销其他 SSH 用户

Comme une habitude relativement conviviale, il est préférable d'envoyer un message à un utilisateur avant de le kicker. Pour envoyer des informations, vous pouvez utiliser la commande write, comme indiqué ci-dessous :

echo "Your session will end in 2 minutes. Save your work!" | write prakash pts/2

Alors, que se passe-t-il si l'envoi d'un signal SIGNHUP ne fonctionne pas ? Vous pouvez également forcer la fin de la session ssh.

Forcer la fin de la session SSH

Si le signal SIGHUP ne fonctionne pas, vous pouvez envoyer le signal SIGKILL.

sudo kill -9 32004

Si vous avez plusieurs sessions SSH, vous pouvez déconnecter l'utilisateur de la session sélectionnée

Si un utilisateur unifié se connecte à partir de plusieurs systèmes ou terminaux, l'opération ci-dessus n'affectera que la session que nous souhaitons mettre fin, elle n'expulsera pas toutes les sessions de l'utilisateur.

Par exemple, lorsque la session ssh raccroche pour certaines raisons (telles que la déconnexion du réseau), nous pouvons mettre fin au terminal et ouvrir une autre session ssh à partir du nouveau terminal. Dans ce cas, nous pouvons nous voir connectés au système. -taux.

À ce moment, nous devons fermer la session inactive.

Dans le résultat de la commande who, nous pouvons déterminer quel utilisateur expulser en fonction de l'heure de connexion. Bien sûr, vous pouvez être expulsé en raison d'un mauvais jugement, mais ce n'est pas grave, vous pouvez vous reconnecter.

在Linux中如何注销其他 SSH 用户

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer