← Toutes les règles
SOCLE-RUN-AUD-033// Audit (auditd daemon)moyenneconfig persistante

Configurer max_log_file_action d'auditd à l'atteinte de la taille maximale du journal

Définit max_log_file_action = keep_logs dans /etc/audit/auditd.conf afin que les journaux d'audit ne soient jamais écrasés lorsqu'un fichier atteint sa taille limite.

Vérifié sur le contenu d’un fichier de configuration persistant, la source de vérité qui survit aux redémarrages.

Un PASS prouve? actif maintenant✓ sur disque✓ survit au rebootle verdict qualifié →
Debian 12CIS 1.1.0Debian 13CIS 1.0.0FedoraRHEL 10 / Rocky 10 / AlmaLinux 10RHEL 8 / Rocky 8 / AlmaLinux 8CIS 4.0.0RHEL 9 / Rocky 9 / AlmaLinux 9CIS 2.0.0Ubuntu 22.04CIS 3.0.0Ubuntu 24.04CIS 1.0.0Ubuntu 26.04
Un seul check, mappé sur 3 normes

Un mapping est une référence croisée vers l’endroit où chaque norme situe cette exigence, ancrée et recoupée, pas une affirmation d’équivalence. Un check réussi est une preuve vers ces références, comment le lire.

Pourquoi cette règle

Lorsqu'un fichier de journal d'audit atteint max_log_file, auditd doit décider quoi faire. keep_logs effectue une rotation sans jamais supprimer les anciens journaux, de sorte qu'aucun historique d'audit n'est détruit silencieusement, essentiel pour les systèmes devant conserver une piste complète ou exporter les journaux avant de récupérer de l'espace. L'option plus faible rotate récupère l'espace automatiquement mais supprime les données les plus anciennes ; keep_logs privilégie la rétention en laissant la gestion de l'espace à un processus externe et en évitant la perte accidentelle de preuves.

Ce que vérifie Pavois

Pavois lit la directive effective max_log_file_action dans /etc/audit/auditd.conf et exige keep_logs. Cette valeur pilote le comportement de rotation du démon ; la directive configurée est donc l'indicateur fiable du risque de perte de journaux.

describe command('grep -qiE "^[[:space:]]*max_log_file_action[[:space:]]*=[[:space:]]*rotate" /etc/audit/auditd.conf && grep -qiE "^[[:space:]]*num_logs[[:space:]]*=[[:space:]]*[1-9]" /etc/audit/auditd.conf && echo ok || echo ko') do
  its('stdout.strip') { should eq 'ok' }
end

Comment vérifier qu’elle est appliquée

Exécutez grep -i '^[[:space:]]*max_log_file_action' /etc/audit/auditd.conf. Sortie attendue : max_log_file_action = keep_logs.

Inspecter et investiguer

Les fichiers ayant subi une rotation apparaissent à côté de /var/log/audit/audit.log (par ex. audit.log.1) ; les actions de rotation et les avertissements liés à l'espace s'affichent dans journalctl -u auditd.

Remédiation

Le plan de durcissement de Pavois écrit max_log_file_action = keep_logs dans /etc/audit/auditd.conf (ressource conf_line) puis notifie le service auditd pour rechargement. Appliquez-le avec pavois harden apply.

Pavois applique ceci avec son propre moteur harden, le plan ci-dessous, pas un script shell :

commandsed -ri 's/^[[:space:]]*max_log_file_action.*/max_log_file_action = ROTATE/' /etc/audit/auditd.conf; grep -qiE '^[[:space:]]*num_logs' /etc/audit/auditd.conf && sed -ri 's/^[[:space:]]*num_logs.*/num_logs = 20/' /etc/audit/auditd.conf || echo 'num_logs = 20' >> /etc/audit/auditd.conf; systemctl kill -s SIGHUP auditd 2>/dev/null; true
nameauditd-rotate
not_ifgrep -qiE '^[[:space:]]*max_log_file_action[[:space:]]*=[[:space:]]*rotate' /etc/audit/auditd.conf && grep -qiE '^[[:space:]]*num_logs[[:space:]]*=[[:space:]]*[1-9]' /etc/audit/auditd.conf
resourceexec
serviceauditd
pavois harden plan local

où la cible est local, un alias SSH user@hôte, ou un conteneur , Docs

Impact & précautions

keep_logs ne récupère jamais d'espace de lui-même : les journaux d'audit grossissent jusqu'à saturer la partition si rien ne les exporte ou ne les purge, moment où disk_full_action/space_left_action prennent le relais (pouvant arrêter l'hôte). Précaution : placez les journaux d'audit sur une partition dédiée et supervisée, et mettez en place un export ou une rotation/archivage externe avant d'activer keep_logs. Associez cette règle à space_left_action/admin_space_left_action pour être alerté bien avant l'épuisement du disque.

Mapping des normes

NormeRéférenceTypeVersionConfiance
CIS6.2.2.2, 6.3.2.2directper OS, see the benchmark tablehaute
NISTAU-5(1), AU-5(2), AU-5(4), AU-5(b), CM-6(a)support800-53 Rev 5 · 800-171 Rev 2 (pinned)moyenne
PCI DSS10.5.1support4.0.1moyenne

Chaque référence est une référence croisée ancrée dans le benchmark amont et recoupée avec le SCAP Security Guide et ansible-lockdown, pas une affirmation d’équivalence. Direct = une exigence prescriptive au niveau de la ligne ; support = une famille de contrôle abstraite (NIST) vers laquelle le check apporte une preuve. Comment lire un mapping.

Sources & références