Set-OPS-Public/roles/auditd/templates/99-setops.rules.j2

43 lines
1.7 KiB
Text
Raw Normal View History

# Managed by Ansible — Set-OPS
-D
-b 8192
-f 1
-w /etc/passwd -p wa -k identity
-w /etc/group -p wa -k identity
-w /etc/shadow -p wa -k identity
-w /etc/gshadow -p wa -k identity
-w /etc/sudoers -p wa -k sudoers
-w /etc/sudoers.d/ -p wa -k sudoers
-w /etc/ssh/sshd_config -p wa -k sshd
-w /etc/ssh/sshd_config.d/ -p wa -k sshd
-w /etc/apt/ -p wa -k apt-config
# LE MATERIEL QUI SIGNE TOUT LE RESTE (2026-09-11).
#
# Les regles ci-dessus surveillent les fichiers par lesquels on prend un compte. Celles-ci
# surveillent ce par quoi on prend une IDENTITE DE MACHINE : `/etc/step/certs/` porte la
# cle privee de l'hote. Qui la copie parle ensuite au nom de la machine devant toute la
# flotte — PostgreSQL en `verify-full`, Loki, l'annuaire — sans jamais toucher a un
# mot de passe ni declencher une seule des regles precedentes.
-w /etc/step/ -p wa -k pki
{% if 'serveur_step_ca' in group_names %}
# LA RACINE DE CONFIANCE, ET ELLE N'EXISTE QUE SUR L'AUTORITE.
#
# `/etc/step-ca/` contient `password.txt` et `secrets/` : de quoi emettre un certificat
# valide pour N'IMPORTE QUEL nom de l'ecosysteme. C'est le seul secret dont la copie ne
# se repare pas par une rotation — il faut refaire la PKI entiere.
#
# LA GARDE EST CONDITIONNELLE, ET CE N'EST PAS UN DETAIL : `auditctl` REFUSE un `-w` vers
# un chemin absent, et `augenrules` fait alors echouer le chargement ENTIER. Poser cette
# ligne sur les treize machines qui ne sont pas l'autorite rejouerait exactement la panne
# du 2026-08-30 — regles armees, personne pour collecter.
-w /etc/step-ca/ -p wa -k pki-autorite
{% endif %}
-a always,exit -F arch=b64 -S adjtimex,settimeofday,clock_settime -k time-change
-a always,exit -F arch=b64 -S sethostname,setdomainname -k system-locale
-e 1