Google+

viernes, 25 de mayo de 2012

Guardar los comandos que se ejecutan en Linux


Si queremos tener un control de los comandos que se ejecutan en nuestro sistema podremos usar la herramienta snoopy. Esta enviara un log a nuestro /var/log/message indicando que ha pasado. Esto nos ayudara a depurar responsabilidades y tener un control mas exhaustivo.



Empezamos descargando el software
# wget https://downloads.sourceforge.net/project/snoopylogger/snoopy-1.8.0.tar.gz?r=&ts=1337944269&use_mirror=freefr

Descomprimimos y entramos en el directorio
# tar -zxvf snoopy-1.8.0.tar.gz
# cd snoopy-1.8.0
Proceso de compilación rutinario:
# ./configure
# make
# make install
Cargamos el modulo, mediante este comando:

# make enable
Lo que hace el comando anterior es agregarnos una entrada en nuestro fichero /etc/ld.so.preload

/usr/local/lib/snoopy.so

Salimos de la sesión y volvemos a entrar para que se empiecen a registrar las entradas. Si vemos nuestro fichero message veremos algo parecido a esto. En mi caso ejecutar el comando ls, incluso se ve que ls tiene el alias de --color=auto

May 25 13:51:23 gentoo snoopy[13845]: [uid:0 sid:13833 tty:/dev/pts/2 cwd:/root filename:/bin/ls]: ls --color=auto

Después podremos comparar el tty con el log wtmp para ver desde donde se ha realizado la conexión:
# who /var/log/wtmp