Comment déconnecter une autre connexion ssh d'utilisateurs par ligne de commande sous Mac OS ou Linux

Table des matières:

Anonim

L'utilisation de SSH, ou Secure Shell, est un moyen très courant d'établir des connexions à distance à des machines Mac et Linux à partir de la ligne de commande. Si vous êtes un administrateur système, ou si vous avez activé SSH sur un Mac pour une autre raison, vous devrez éventuellement vous déconnecter de la connexion ssh d'un autre utilisateur. Il existe plusieurs façons de mettre fin à la connexion ssh d'un utilisateur à un Mac (ou une boîte Linux d'ailleurs, ces conseils s'appliquent également là-bas également), et nous en couvrirons quelques-unes.

Notez que ces approches fonctionneront pour déconnecter la connexion ssh d'un utilisateur, quelle que soit la manière dont vous avez activé SSH sur l'ordinateur. Que le Mac active ssh avec la connexion à distance ou active ssh par ligne de commande n'a pas d'importance à ces fins. De même, ces astuces sont écrites avec MacOS et Mac OS X à l'esprit, mais s'appliquent également à l'arrêt des processus utilisateur ssh sous Linux et la plupart des autres versions d'Unix.

Comment se déconnecter d'une connexion ssh d'un utilisateur

Peut-être que le moyen le plus courant de déconnecter un utilisateur connecté via ssh consiste à utiliser les commandes kill ou pkill, soit en ciblant le processus ssh spécifique en question, soit directement le compte d'utilisateur.

Déconnexion de l'utilisateur ssh avec kill

Tout d'abord, obtenez l'ID de processus (PID) de la connexion ssh des utilisateurs :

ps aux | grep sshd

Ensuite, localisez le processus spécifique de la connexion ssh des utilisateurs cibles et ciblez-le avec kill -9. Par exemple, supposons que nous voulons mettre fin à la connexion ssh de l'utilisateur Walrus et que le processus pour 'sshd: Walrus@ttys011' a un PID de 5821 :

kill -9 5821

L'effet est instantané et les utilisateurs finissent par voir un message sur l'écran de leur terminal indiquant : "Connexion à l'hôte local fermée par l'hôte distant. Connexion à l'hôte local fermée."

Broadly mettre fin à la connexion SSH d'un utilisateur et aux processus associés avec pkill

Une autre approche plus large consiste à tuer tous les processus appartenant à un compte utilisateur spécifique avec pkill, cela vous permet de cibler simplement un compte utilisateur plutôt qu'un ID de processus :

pkill -u nom d'utilisateur

Cela déconnectera instantanément le "nom d'utilisateur" de l'utilisateur en mettant fin à tous les processus de l'utilisateur.

L'approche pkill est utile car elle accepte également les caractères génériques et vous pouvez également cibler facilement un processus par son nom si vous souhaitez terminer globalement tous les processus ssh par exemple.

Il existe d'autres possibilités pour mettre fin à la connexion ssh d'un autre utilisateur, mais les astuces ci-dessus sont peut-être les plus intuitives pour les utilisateurs avertis de la ligne de commande.Fondamentalement, toute méthode qui vous permet de voir les processus en cours d'exécution et de localiser la connexion ssh des utilisateurs attendus fonctionnera pour obtenir le même effet. mettre fin à ce processus entraînera la déconnexion de cet utilisateur de ssh.

Déconnexion d'un utilisateur SSH d'un Mac avec Activity Monitor

Si vous êtes un utilisateur Mac qui préfère rester dans l'interface graphique, vous pouvez également utiliser Activity Monitor pour localiser la tâche et la terminer de cette façon, de la même manière que vous forceriez à quitter Mac applications en général. Ouvrez simplement Activity Monitor, recherchez "ssh" et trouvez la connexion ssh des utilisateurs que vous souhaitez mettre fin, puis terminez ce processus via Activity Monitor.

Étant donné que cette approche utilise Activity Monitor, un utilitaire Mac natif, cette méthode ne fonctionnera évidemment pas pour les machines Linux car elles n'ont pas cet utilitaire, contrairement à toute autre approche pour cibler le processus.

Et juste au cas où vous vous poseriez la question, oui, tout cela fonctionnerait essentiellement de la même manière avec telnet, le partage d'écran ou toute autre méthode de connexion à distance, en ciblant les processus pertinents spécifiques à l'utilisateur connecté Compte.

Si vous connaissez d'autres méthodes ou approches pour déconnecter les connexions ssh des utilisateurs ou déconnecter les utilisateurs de ssh, partagez-les avec nous dans les commentaires ci-dessous !

Comment déconnecter une autre connexion ssh d'utilisateurs par ligne de commande sous Mac OS ou Linux