GNU/Linux >> Tutoriels Linux >  >> Linux

Comment déconnecter un utilisateur de SSH sous Linux

Si vous êtes connecté à un système Linux distant via SSH, il vous suffit d'utiliser la commande exit pour vous déconnecter de SSH.

exit

C'est très bien. Mais que se passe-t-il si vous souhaitez déconnecter un autre utilisateur de la connexion SSH ?

Dans cette astuce rapide, je vais vous montrer comment vous pouvez expulser n'importe quel utilisateur du système.

Déconnecter un utilisateur de la session SSH

Tout d'abord, vérifiez la liste des utilisateurs connectés à votre serveur Linux. Il existe différentes façons de le faire. Je vais utiliser la commande who avec l'option -u . Cette option affiche l'ID de processus de la session shell de connexion des utilisateurs.

who -u

Voici un exemple de sortie :

[email protected]:~# 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)

Imaginez maintenant que je veux utiliser prakash de la session SSH. L'ID de processus de sa session shell est 32004. Si vous arrêtez la session shell de connexion, l'utilisateur sera déconnecté.

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

sudo kill -HUP 32004

Bien sûr, pour effectuer une telle action, vous devez être root ou sudo.

Il y a quelques choses que vous devez savoir et faire.

Envoyer un message avant de terminer la session

C'est une bonne idée d'informer l'utilisateur final avant de mettre fin à sa session. Vous pouvez utiliser la commande write pour déposer rapidement un message à l'utilisateur de cette manière :

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

Forcer l'arrêt d'une session SSH si SIGNHUP ne fonctionne pas

Si le signal SIGHUP ne fonctionne pas, envoyez le signal SIGKILL.

sudo kill -9 32004

Vous pouvez également déconnecter un utilisateur de la session sélectionnée si l'utilisateur a plus d'une session SSH

Si le même utilisateur est connecté à partir de plusieurs systèmes ou terminaux, seule la session que vous arrêtez est affectée. Cela n'exclura pas l'utilisateur de toutes les sessions.

C'est le cas lorsque votre session SSH raccroche pour une raison quelconque, comme une déconnexion du réseau. Vous pouvez tuer le terminal et ouvrir une autre session SSH à partir d'un nouveau terminal, mais maintenant vous vous voyez connecté deux fois au système.

Dans ce cas, vous pouvez fermer la session qui ne devrait plus être active.

Vous pouvez identifier quel utilisateur lancer à partir du moment de la connexion qui est visible dans la sortie de who commande. Ne vous inquiétez pas, le pire des cas serait que vous vous déconnectiez de votre session en cours. Mais vous pourrez alors vous reconnecter.

J'espère que cette astuce rapide vous a aidé à déconnecter un utilisateur d'une session SSH sous Linux. Vos questions et suggestions sont les bienvenues.


Linux
  1. Comment changer un nom d'utilisateur sous Linux

  2. Comment changer le port SSH sous Linux

  3. Comment mettre fin à une connexion SSH qui ne répond pas sous Linux ?

  4. Linux - Comment connecter l'utilisateur à Tty à partir de Ssh ?

  5. Comment faire en sorte que ssh se connecte avec le bon utilisateur ?

Comment autoriser ou refuser l'accès SSH à un utilisateur ou à un groupe particulier sous Linux

Comment savoir à quels groupes un utilisateur appartient sous Linux

Comment désactiver la connexion SSH à un utilisateur spécifique sous Linux

Comment restreindre l'accès SSH à certains utilisateurs sous Linux

Comment changer d'utilisateur sous Linux

Comment désactiver la connexion SSH pour l'utilisateur root sous Linux ?