Passer au contenu principal

Sécurité (Linux)

auditd

auditd est le sous-système d'audit du noyau Linux. Il enregistre des événements précis : accès à des fichiers sensibles, exécution de commandes, changements de permissions, connexions. Là où les logs applicatifs décrivent ce qu'un service a fait, auditd décrit ce qui s'est passé au niveau système.

Installation

apt install auditd audispd-plugins
systemctl enable auditd
systemctl start auditd

Ajouter des règles

Les règles se définissent avec auditctl (temporaire) ou dans /etc/audit/rules.d/ (persistant).

Surveiller un fichier

auditctl -w /etc/passwd -p rwa -k passwd-changes
# -w : fichier à surveiller
# -p rwa : read, write, attribute change
# -k : clé pour retrouver l'événement dans les logs

Surveiller l'exécution de commandes (syscall)

auditctl -a always,exit -F arch=b64 -S execve -F euid=0 -k root-exec

Règles persistantes

# /etc/audit/rules.d/hardening.rules

# Fichiers sensibles
-w /etc/passwd -p rwa -k passwd
-w /etc/shadow -p rwa -k shadow
-w /etc/sudoers -p rwa -k sudoers
-w /etc/ssh/sshd_config -p rwa -k sshd-config

# Commandes root
-a always,exit -F arch=b64 -S execve -F euid=0 -k root-exec

Recharger les règles :

augenrules --load

Consulter les logs

ausearch -k passwd-changes                   # événements avec la clé "passwd-changes"
ausearch -k passwd-changes --start recent    # dernières 10 minutes
ausearch -f /etc/shadow                      # événements sur un fichier
ausearch -ua 1000                            # événements pour l'UID 1000

aureport --summary                           # rapport synthétique
aureport --auth                              # événements d'authentification
aureport --login --summary                   # résumé des connexions

En pratique

auditd n'est pas réservé à la conformité réglementaire (PCI-DSS, ISO 27001) : c'est un outil de forensique concret. Après un incident, ausearch -k root-exec --start yesterday liste toutes les commandes exécutées en root la veille. ausearch -f /etc/sudoers révèle si le fichier a été modifié et par qui. Sur un serveur sensible, commencer par surveiller les fichiers de configuration critiques et les connexions root, sans activer l'audit exhaustif qui génère des volumes difficiles à exploiter.