Si ha iniciado sesión en un sistema Linux remoto a través de SSH, solo necesita usar el comando exit para cerrar sesión en SSH.
exit
Esta bien. Pero, ¿qué sucede si desea cerrar la sesión de otro usuario de la conexión SSH?
En este consejo rápido, le mostraré cómo puede expulsar a cualquier usuario del sistema.
Cerrar sesión de un usuario de la sesión SSH
Primero, verifique la lista de usuarios registrados en su servidor Linux. Hay varias formas de hacerlo. Usaré el comando who con la opción -u
. Esta opción muestra el ID de proceso de la sesión de shell de inicio de sesión de los usuarios.
who -u
Aquí hay una salida de muestra:
[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)
Ahora imagina que quiero patear use prakash
de la sesión SSH. El ID de proceso de su sesión de shell es 32004. Si cancela la sesión de shell de inicio de sesión, el usuario se desconectará.
Para hacer eso, puede usar el comando matar para enviar un SIGHUP
señal. Esta señal se utiliza para informar que el terminal del usuario está desconectado. También desconecta efectivamente todos los procesos en la sesión del terminal de control.
sudo kill -HUP 32004
Por supuesto, para realizar tal acción, debe ser usuario root o sudo.
Hay algunas cosas que debe saber y hacer.
Enviar un mensaje antes de terminar la sesión
Es una buena idea informar al usuario final antes de finalizar su sesión. Puede usar el comando de escritura para enviar rápidamente un mensaje al usuario de esta manera:
echo "Your session will end in 2 minutes. Save your work!" | write prakash pts/2
Fuerza el cierre de una sesión SSH si SIGNHUP no funciona
Si la señal SIGHUP no funciona, envíe la señal SIGKILL.
sudo kill -9 32004
También puede cerrar sesión usuario de la sesión seleccionada si el usuario tiene más de una sesión SSH
Si el mismo usuario inicia sesión desde más de un sistema o terminal, solo se verá afectada la sesión que está eliminando. No expulsará al usuario de todas las sesiones.
Este es el caso cuando su sesión SSH se cuelga por algún motivo, como la desconexión de la red. Puede eliminar la terminal y abrir otra sesión SSH desde una nueva terminal, pero ahora se verá conectado al sistema dos veces.
En tal caso, puede cerrar la sesión que ya no debería estar activa.
Puede identificar qué usuario iniciar desde el momento del inicio de sesión que es visible en la salida de who
dominio. No te preocupes, el peor de los casos sería que te desconectaras de tu sesión actual. Pero luego puede iniciar sesión de nuevo.
Espero que este consejo rápido te haya ayudado a cerrar la sesión de un usuario de SSH en Linux. Sus preguntas y sugerencias son bienvenidas.