Cómo auditar el proceso de Linux usando 'autrace' en CentOS / RHEL


Este artículo es nuestra serie en curso sobre Auditoría de Linux. En nuestros últimos tres artículos, hemos explicado cómo auditar los sistemas Linux ( CentOS y RHEL ), consultar los registros de auditoría utilizando ausearch y generar Informes utilizando la utilidad aureport.

En este artículo, explicaremos cómo auditar un proceso dado usando la utilidad autrace , donde analizaremos un proceso rastreando las llamadas del sistema que hace un proceso.

autrace es una utilidad de línea de comandos que ejecuta un programa hasta que sale, al igual que strace ; agrega las reglas de auditoría para rastrear un proceso y guarda la información de auditoría en el archivo /var/www/audit/audit.log . Para que funcione (es decir, antes de ejecutar el programa seleccionado), primero debe eliminar todas las reglas de auditoría existentes.

La sintaxis para usar autrace se muestra a continuación, y solo acepta una opción, -r que limita las llamadas al sistema recopiladas a las requeridas para evaluar el uso de recursos del proceso:

# autrace -r program program-args

rojo

# autrace program -r program-args

Si tiene reglas de auditoría presentes, autrace muestra el siguiente error.

# autrace /usr/bin/df

Primero elimine todas las reglas auditd con el siguiente comando.

# auditctl -D

Luego proceda a ejecutar autrace con su programa objetivo. En este ejemplo, estamos rastreando la ejecución del comando df, que muestra el uso del sistema de archivos.

# autrace /usr/bin/df -h

De la captura de pantalla anterior, puede encontrar todas las entradas de registro que se relacionan con el rastreo, desde el archivo de registro de auditoría usando la utilidad ausearch de la siguiente manera.

# ausearch -i -p 2678

Donde la opción:

  • -i – enables interpreting of numeric values into text.
  • -p – passes the process ID to be searched.

Para generar un informe sobre los detalles de rastreo, puede crear una línea de comando de ausearch y aureport de esta manera.

# ausearch -p 2678 --raw | aureport -i -f

Dónde:

  • --raw – tells ausearch to deliver raw input to aureport.
  • -f – enables reporting about files and af_unix sockets.
  • -i – allows interpreting of numeric values into text.

Y al usar el comando a continuación, estamos limitando los syscalls recopilados a los necesarios para analizar el uso de recursos del proceso df.

# autrace -r /usr/bin/df -h

Suponiendo que haya autotratado un programa durante la última semana; lo que significa que hay mucha información volcada en los registros de auditoría. Para generar un informe solo para los registros de hoy, use el indicador de búsqueda -ts para especificar la fecha/hora de inicio de la búsqueda:

# ausearch -ts today -p 2678 --raw | aureport -i -f

¡Eso es! De esta manera, puede rastrear y auditar procesos Linux específicos utilizando la herramienta autrace , para obtener más información, consulte las páginas man.

También puede leer estas guías útiles y relacionadas:

  1. Sysdig – A Powerful System Monitoring and Troubleshooting Tool for Linux
  2. BCC – Dynamic Tracing Tools for Linux Performance Monitoring, Networking and More
  3. 30 Useful ‘ps Command’ Examples for Linux Process Monitoring
  4. CPUTool – Limit and Control CPU Utilization of Any Process in Linux
  5. Find Top Running Processes by Highest Memory and CPU Usage in Linux

¡Eso es todo por ahora! Puede hacer cualquier pregunta o compartir opiniones sobre este artículo a través del comentario a continuación. En el siguiente artículo, describiremos cómo configurar PAM (Módulo de autenticación conectable) para auditar la entrada TTY para usuarios específicos CentOS/RHEL.