Cómo cerrar la sesión de un usuario fuera de SSH en Linux

Si ha iniciado sesión en un sistema Linux remoto a través de SSH, solo necesita usar el comando exit para salir de SSH.

exit

Esto es bueno. Pero, ¿qué sucede si desea cerrar la sesión de otro usuario desde la conexión SSH?

En este consejo rápido, le mostraré cómo puede expulsar a cualquier usuario del sistema.

Salir del usuario de la sesión SSH

Primero verifique la lista de usuarios registrados en su servidor Linux. Hay maneras diferentes de hacer esto. Usaré el comando who con una opción -u. Esta opción muestra el ID de sesión del shell de inicio de sesión del usuario.

who -u

Aquí hay una muestra de producción:

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)

Ahora imagina que quiero usar una patada prakash de la sesión SSH. El ID de proceso de su shell es 32004. Si cancela la sesión del shell de inicio de sesión, el usuario será abortado.

Para hacer esto, puede usar el comando kill para enviar SIGHUP señal. Esta la señal se utiliza para informar que el terminal de usuario está apagado. También interrumpe eficazmente todos los procesos de sesión desde el terminal de control.

sudo kill -HUP 32004

Por supuesto, para realizar tal acción, debe ser un usuario root o sudo.

Hay algunas cosas que necesita saber y hacer.

Envíe un mensaje antes de finalizar la sesión

Es una buena idea informar al usuario final antes de finalizar su sesión. Puede utilizar el comando de escritura para enviar rápidamente un mensaje al usuario de la siguiente manera:

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

Forzar el cierre de la sesión SSH si SIGNHUP no funciona

Si la señal SIGHUP no funciona, envíe una señal SIGKILL.

sudo kill -9 32004

También puede cerrar la sesión de un usuario de la sesión seleccionada si tiene más de una sesión SSH

Si el mismo usuario está conectado desde más de un sistema o terminal, solo afectará la sesión que está matando. Esto no sacará al usuario de todas las sesiones.

Este es el caso cuando su sesión SSH se interrumpe por algún motivo, como una interrupción de la red. Puede matar la terminal y abrir otra sesión SSH desde una nueva terminal, pero ahora se ve que ha iniciado sesión dos veces.

En este caso, puede cerrar la sesión, que ya no debería estar activa.

Puede especificar qué usuario comenzar desde el momento del registro, que es visible en la salida de who equipo. No se preocupe, el peor de los casos sería comenzar desde su sesión actual. Pero luego puede iniciar sesión nuevamente.

Espero que este consejo rápido le haya ayudado a salir de una sesión de usuario SSH en Linux. Sus preguntas y sugerencias son bienvenidas.

Leave a Reply