Configurer auditd sur CentOS 7

Configurer auditd sur CentOS 7

auditd est installé nativement sur CentOS, Red Hat et Fedora. Vous pouvez vérifier la présence des paquets nécessaires au fonctionnement de ce service de surveillance du système à l’aide de la commande :

rpm -qa|grep audit

Vous pouvez également vérifier qu’il s’exécute :

systemctl status auditd

Permettre le redémarrage à chaud du service auditd

Par défaut, vous ne pourrez pas arrêter ce service lorsqu’il s’exécute. Il y a donc lieu d’éditer le fichier de lancement du service /lib/systemd/system/auditd.service et de modifier la directive RefuseManualStop en la passant à no :

RefuseManualStop=no

Une fois le fichier modifié, pour le redémarrer, faites :

systemctl daemon-reload
systemctl restart auditd

Ajout de règles

Sur CentOS 7, les règles doivent être ajoutées au fichier /etc/audit/rules.d/audit.rules.

#Surveillance du fichier /etc/ssh/sshd_config
-w /etc/ssh/sshd_config -p w -k ssh_configuration_change
#Audit de l'exécution des Commandes 32 et 64 bits
-a exit,always -F arch=b64 -S execve -k root_command_executing
-a exit,always -F arch=b32 -S execve -k root_command_executing
#Audit sur l'exécution de la commande passwd
-w /bin/passwd -p x -k passwd_command_execution

Après redémarrage du service, vous pouvez lister les règles actives en tapant :

auditctl -l

Recherche des événements

Pour trouver les lignes du fichier /var/log/audit/audit.log qui se réfèrent à la ligne concernant la modification de la configuration du fichier /etc/ssh/sshd_config, tapez à partir de l’invite de commandes :

ausearch -f /etc/ssh/sshd_config -i

Vous pouvez aussi disposer du nombre d’occurrences pour chacun des audits effectués sur les fichiers par le démon :

aureport -f -i --summary

Redirection vers rsyslog

Vous pouvez enfin rediriger les messages du fichier /var/log/audit/audit.log vers le démon rsyslog en ajoutant au fichier /etc/rsyslog.conf :

#CentOS 7
$ModLoad imfile
$InputFileName /var/log/audit/audit.log
$InputFileTag audit:
$InputFileSeverity info
$InputFileFacility local0
$InputRunFileMonitor
#Fedora 28
module(load="imfile")
input(
type="imfile" File="/var/log/audit/audit.log" 
Tag="audit:" 
Severity="info" 
Facility="local0"
)

A creuser sur auditd

 

CentOS / , , , , ,