--- - name: Installer auditd ansible.builtin.apt: name: - auditd - audispd-plugins state: present # AVANT DE POSER LES NOTRES, RETIRER CELLES D'UNE NOMENCLATURE ABANDONNEE. # # `augenrules` concatene tout `rules.d/` : un doublon fait echouer le chargement ENTIER, # et `auditd` ne demarre pas faute de sa dependance. Voir defaults/main.yml. - name: Retirer les regles auditd d'une nomenclature abandonnee ansible.builtin.file: path: "/etc/audit/rules.d/{{ item }}" state: absent loop: "{{ auditd_fichiers_perimes }}" notify: Restart auditd when: auditd_enabled | bool - name: Déployer les règles auditd Set-OPS ansible.builtin.template: src: 99-setops.rules.j2 dest: /etc/audit/rules.d/99-setops.rules owner: root group: root mode: "0640" notify: Restart auditd when: auditd_enabled | bool # `failed_when: false` A CACHE LA PANNE PENDANT TOUT UN DEPLOIEMENT (2026-08-30). # # Quinze machines rapportaient `failed=0` alors qu'`auditd` etait mort sur les quinze. Un # service de securite qui ne demarre pas doit se VOIR : c'est precisement le genre de # panne que personne ne va chercher, puisque rien ne la signale et que `auditctl -l` # affiche des regles. # # On tolere encore l'echec sur les machines ou l'audit n'est pas demande — mais quand il # l'est, on le dit. - name: Activer auditd ansible.builtin.systemd: name: auditd enabled: true state: started when: auditd_enabled | bool register: auditd_demarrage - name: Refuser si l'audit est demande mais ne tourne pas ansible.builtin.assert: that: - auditd_demarrage is not failed fail_msg: >- `auditd_enabled` est vrai mais le service n'a pas demarre. Cause la plus frequente : un doublon dans `/etc/audit/rules.d/` fait echouer `audit-rules.service`, dont `auditd` depend — verifier `augenrules --check` et `auditd_fichiers_perimes`. Les regles peuvent etre ARMEES dans le noyau sans que personne ne collecte. when: auditd_enabled | bool