Cómo consultar registros de auditoría con la herramienta ausearch en CentOS/RHEL


En nuestro último artículo, explicamos cómo auditar el sistema RHEL o CentOS utilizando la utilidad auditd. El sistema de auditoría (auditd) es un sistema de registro completo y no usa syslog para el caso. También viene con un conjunto de herramientas para administrar el sistema de auditoría del kernel, así como para buscar y producir informes a partir de la información de los archivos de registro.

En este tutorial, explicaremos cómo usar una herramienta de búsqueda para recuperar datos de archivos de registro auditados en distribuciones de Linux basadas en RHEL y CentOS.

Como mencionamos anteriormente, el sistema de auditoría tiene un demonio de auditoría de espacio de usuario (auditd) que recopila información relacionada con la seguridad basada en reglas preconfiguradas, desde el kernel y genera entradas en un archivo de registro.

ausearch es una herramienta de línea de comandos simple que se utiliza para buscar archivos de registro del demonio de auditoría en función de eventos y diferentes criterios de búsqueda, como identificador de evento, identificador de clave, arquitectura de CPU, nombre de comando, nombre de host, nombre de grupo o ID de grupo, syscall, mensajes y más. También acepta datos sin procesar de stdin.

De forma predeterminada, ausearch consulta el archivo /var/log/audit/audit.log, que puede ver como cualquier otro archivo de texto.

# cat /var/log/audit/audit.log
OR
# cat /var/log/audit/audit.log | less

En la captura de pantalla anterior, puede ver una gran cantidad de datos del archivo de registro, lo que dificulta la obtención de información específica de interés.

Por lo tanto, necesita unusearch, que permite buscar información de una manera más potente y eficiente utilizando la siguiente sintaxis.

# ausearch [options]

El indicador -p se utiliza para pasar un ID de proceso.

# ausearch -p 2317

Aquí, debe usar la opción -m para identificar mensajes específicos y -sv para definir el valor de éxito.

# ausearch -m USER_LOGIN -sv no 

La -ua se usa para pasar un nombre de usuario.

# ausearch -ua tecmint
OR
# ausearch -ua tecmint -i	# enable interpreting of numeric entities into text.

Para consultar las acciones realizadas por un determinado usuario en un período de tiempo determinado, utilice -ts para la fecha/hora de inicio y -te para especificar la fecha/hora de finalización de la siguiente manera ( tenga en cuenta que puede usar palabras como ahora, reciente, hoy, ayer, esta semana, hace una semana, este mes, este año, así como punto de control en lugar de los formatos de hora real).

# ausearch -ua tecmint -ts yesterday -te now -i 

Más ejemplos sobre la búsqueda de acciones de un usuario determinado en el sistema.

# ausearch -ua 1000 -ts this-week -i
# ausearch -ua tecmint -m USER_LOGIN -sv no -i

Si desea revisar todos los cambios del sistema relacionados con cuentas de usuario, grupos y roles; especifique varios tipos de mensajes separados por comas como en el siguiente comando (cuide la lista separada por comas, no deje espacios entre una coma y el siguiente elemento):

# ausearch -m ADD_USER,DEL_USER,USER_CHAUTHTOK,ADD_GROUP,DEL_GROUP,CHGRP_ID,ROLE_ASSIGN,ROLE_REMOVE  -i

Considere la regla de auditoría a continuación que registrará cualquier intento de acceder o modificar la base de datos de cuentas de usuario/etc/passwd.

# auditctl -w /etc/passwd -p rwa -k passwd_changes

Ahora, intente abrir el archivo anterior para editarlo y ciérrelo, de la siguiente manera.

# vi /etc/passwd

Solo porque sabe que se ha registrado una entrada de registro sobre esto, posiblemente verá las últimas partes del archivo de registro con el comando tail de la siguiente manera:

# tail /var/log/audit/audit.log

¿Qué pasa si varios otros eventos se han registrado recientemente? Encontrar la información específica sería muy difícil, pero usando ausearch, puede pasar la marca -k con el valor clave que especificó en la regla de auditoría para ver todos registrar mensajes relacionados con eventos relacionados con el acceso o la modificación del archivo/etc/passwd.

Esto también mostrará los cambios de configuración realizados para definir las reglas de auditoría.

# ausearch -k passwd_changes | less

Para obtener más información y opciones de uso, lea la página del manual de ausearch:

# man ausearch

Para saber más sobre la gestión de registros y auditoría del sistema Linux, lea los siguientes artículos relacionados.

  1. Petiti: una herramienta de análisis de registros de código abierto para administradores de sistemas Linux
  2. Supervise los registros del servidor en tiempo real con la herramienta "Log.io" en RHEL/CentOS 7/6
  3. Cómo configurar y administrar la rotación de registros usando Logrotate en Linux
  4. lnav: observe y analice los registros de Apache desde una terminal de Linux

En este tutorial, describimos cómo usar ausearch para recuperar datos de un archivo de registro auditado en RHEL y CentOS. Si tiene alguna pregunta o pensamiento que compartir, utilice la sección de comentarios para comunicarse con nosotros.

En nuestro próximo artículo, explicaremos cómo crear informes a partir de archivos de registro de auditoría utilizando aureport en RHEL/CentOS/Fedora.