GNU/Linux >> Tutoriales Linux >  >> Linux

Para saber que IP ejecutó un determinado comando en linux usando ssh

Cada nuevo usuario que se conecta genera un nuevo sshd sesión con un PID específico. Podrías usar pstree para imprimir qué comandos se heredan de qué sshd sesión, y luego verifique este PID en /var/log/auth.log .

Ejemplo (anonimizado):Inicié sesión en un servidor remoto con 3 sesiones simultáneas, con el mismo usuario remoto. Ahora quiero saber de qué IP vino el cliente que ejecutó el comando watch date .

$ pstree -p | grep watch
        |           |-sshd(15243)---sshd(15342)---bash(15343)---watch(15450)
$ sudo grep 15243 /var/log/auth.log
Mar  7 15:37:29 XXXXXXXXXX sshd[15243]: Accepted publickey for XXXXXXXXXX from 12.34.56.78 port 48218 ssh2
Mar  7 15:37:29 XXXXXXXXXX sshd[15243]: pam_unix(sshd:session): session opened for user XXXXXXXXXX by (uid=0)
Mar  7 15:37:44 XXXXXXXXXX sudo: XXXXXXXXXX : TTY=pts/7 ; PWD=/home/XXXXXXXXXX ; USER=root ; COMMAND=/bin/grep 15243 /var/log/auth.log

pstree -p muestra que el watch el comando se hereda de sshd con PID 15243. grep ing para este PID en /var/auth/auth.log muestra que fue la IP 12.34.56.78 la que inició esta sesión. Por lo tanto, este también es el usuario que inició watch .

En cuanto a encontrar history para este usuario específicamente, no se puede hacer por lo que puedo ver cuando todos los usuarios remotos usan el mismo usuario SSH local. Además, puede falsificarse/desactivarse/etc. fácilmente, por lo que no es realmente fiable. Si se guarda en el archivo de historial, puede buscar el cp comando y mirar hacia atrás en el archivo, pero si no está allí, entonces no hay mucho que hacer.


Linux
  1. 10 comandos que todo usuario de Linux debe conocer

  2. 3 trucos útiles que todo usuario de Linux debe conocer

  3. ¿Cómo saber qué distribución de Linux está utilizando?

  4. Cómo eliminar un usuario en Linux usando la línea de comandos

  5. Linux su comando

Cómo encontrar si un usuario está utilizando autenticación SSH basada en contraseña o clave en Linux

Buenas alternativas a las páginas de manual que todo usuario de Linux necesita saber

Comando su en Linux

Cómo restringir el acceso SSH a ciertos usuarios en Linux

Usando el comando Watch en Linux

5 trucos simples de Bash History que todo usuario de Linux debe saber