Cómo configurar PAM para auditar la actividad del usuario del shell de registro


Esta es nuestra serie en curso sobre auditoría de Linux. En esta cuarta parte de este artículo, explicaremos cómo configurar PAM para la auditoría de la entrada TTY de Linux (Logging Shell User Activity) para usuarios específicos que utilizan la herramienta pam_tty_audit.

Linux PAM (Módulos de autenticación conectables) es un método muy flexible para implementar servicios de autenticación en aplicaciones y varios servicios del sistema; surgió del Unix PAM original.

Divide las funciones de autenticación en cuatro módulos de gestión principales, a saber: módulos de cuenta, módulos de autenticación, módulos de contraseña y módulos de sesión. La explicación detallada de estos grupos de administración está más allá del alcance de este tutorial.

La herramienta auditd usa el módulo PAM pam_tty_audit para habilitar o deshabilitar la auditoría de la entrada TTY para usuarios específicos. Una vez que un usuario está configurado para ser auditado, pam_tty_audit trabaja en conjunto con el auditd para rastrear las acciones de un usuario en el terminal y, si está configurado, captura las pulsaciones de teclas exactas que hace el usuario y luego las registra en/var/log/audit/audit. archivo de registro.

Configuración de PAM para auditar la entrada TTY del usuario en Linux

Puede configurar PAM para auditar la entrada TTY de un usuario en particular en los archivos /etc/pam.d/system-auth y /etc/pam.d/password-auth, usando la opción enable. Por otro lado, como se esperaba, la desactivación lo desactiva para los usuarios especificados, en el siguiente formato:

session required pam_tty_audit.so disable=username,username2...  enable=username,username2..

Para activar el registro de las pulsaciones de teclas reales del usuario (incluidos espacios, retrocesos, teclas de retorno, la tecla de control, la tecla de eliminación y otras), agregue la opción log_passwd junto con las otras opciones, utilizando este formulario:

session required pam_tty_audit.so disable=username,username2...  enable=username log_passwd

Pero antes de realizar cualquier configuración, tenga en cuenta que:

  • Como se ve en la sintaxis anterior, puede pasar muchos nombres de usuario a la opción habilitar o deshabilitar.
  • Cualquier opción de habilitar o deshabilitar anula la opción opuesta anterior que coincide con el mismo nombre de usuario.
  • Después de habilitar la auditoría de TTY, todos los procesos iniciados por el usuario definido la heredan.
  • Si la grabación de pulsaciones de teclas está activada, la entrada no se registra instantáneamente, ya que la auditoría de TTY primero almacena las pulsaciones de teclas en un búfer y escribe el contenido del búfer a intervalos determinados, o después de que el usuario auditado cierra sesión, en/var/log. Archivo /audit/audit.log.

Veamos un ejemplo a continuación, donde configuraremos pam_tty_audit para registrar las acciones del usuario tecmint , incluidas las pulsaciones de teclas, en todos los terminales, mientras deshabilitamos la auditoría de TTY para todos los demás usuarios del sistema.

Abra estos dos archivos de configuración siguientes.

# vi /etc/pam.d/system-auth
# vi /etc/pam.d/password-auth

Agregue la siguiente línea a los archivos de configuración.
sesión requerida pam_tty_audit.so disable u003d * enable u003d tecmint

Y para capturar todas las pulsaciones de teclas introducidas por el usuario tecmint, podemos agregar la opción log_passwd a mostrada.

session required pam_tty_audit.so disable=*  enable=tecmint log_passwd

Ahora guarde y cierre los archivos. Luego, vea el archivo de registro auditado para cualquier entrada de TTY registrada, usando la utilidad aureport.

# aureport --tty

En la salida anterior, puede ver que el usuario tecmint cuyo UID es 1000 usó el editor vi/vim, creó un directorio llamado bin y se movió a él, borró la terminal y así sucesivamente.

Para buscar registros de entrada de TTY grabados con marcas de tiempo iguales o posteriores a una hora específica, use -ts para especificar la fecha/hora de inicio y -te para establecer el final. fecha y hora.

Los siguientes son algunos ejemplos:

# aureport --tty -ts 09/25/2017 00:00:00 -te 09/26/2017 23:00:00
# aureport --tty -ts this-week

Puede encontrar más información en la página de manual de pam_tty_audit.

# man  pam_tty_audit

Consulte los siguientes artículos útiles.

  1. Configure "Autenticación de claves SSH sin contraseña" con PuTTY en servidores Linux
  2. Configuración de la autenticación basada en LDAP en RHEL/CentOS 7
  3. Cómo configurar la autenticación de dos factores (Autenticador de Google) para inicios de sesión SSH
  4. Inicio de sesión sin contraseña SSH con SSH Keygen en 5 sencillos pasos
  5. Cómo ejecutar el comando "sudo" sin ingresar una contraseña en Linux

En este artículo, describimos cómo configurar PAM para la auditoría de entrada para usuarios específicos en CentOS/RHEL. Si tiene alguna pregunta o idea adicional para compartir, use el comentario de abajo.