
¿Existe una manera elegante de registrar cada comando enviado en todos los shells de una máquina? Esto es en el contexto de un servidor Ubuntu que se utiliza con poca frecuencia, del cual soy el único usuario humano. (Hay varias cuentas de usuario utilizadas por sistemas automatizados).
Me gustaría que esto fuera discreto y con pocos gastos generales, así que me encantaría que hubiera un método simple que involucrara algo como script
.
Respuesta1
Desde los albores de los tiempos (en realidad, desde la época en que las personas tenían que pagar dinero real por cada ciclo de computadora que usaban), Unix y sus clones han tenido un sistema llamado Contabilidad de Procesos ( acct
) incorporado. Esto permitió a los administradores del sistema saber exactamente lo que estaban haciendo sus usuarios y así poder facturarles en consecuencia.
Las acct
funciones todavía existen en la mayoría de los sistemas Unix y Linux hasta el día de hoy.
Este sitio:http://www.cyberciti.biz/tips/howto-log-user-activity-using-process-accounting.htmlle dice cómo habilitarlo.
Respuesta2
Podrías usarfisgón.
Es muy sencillo de instalar y eliminar (no requiere ningún módulo de kernel ni parches). Tenga en cuenta que esta no es una solución de auditoría adecuada y se puede eludir fácilmente.
Divulgación: actualmente soy el mantenedor de snoopy.
Respuesta3
Aquí tienes una muy bonita y rápida.forma de registrar todos los comandos de shell:
Paso 1:
Utilice su editor de texto favorito para abrir /etc/bashrc y agregue la siguiente línea al final:
export PROMPT_COMMAND='RETRN_VAL=$?;logger -p local6.debug "$(whoami) [$$]: $(history 1 | sed "s/^[ ]*[0-9]\+[ ]*//" ) [$RETRN_VAL]"'
Paso 2:
Configure syslogger para capturar local6 en un archivo de registro agregando esta línea en el archivo /etc/syslog.conf:
local6.* /var/log/cmdlog.log
Respuesta4
Puedes usarsudoshcomo envoltorio de concha. Incluye el registro automático de todo lo que hace y puede reproducir los archivos de registro.Consulte su sitio web para obtener más información..