76 lines
2.9 KiB
YAML
76 lines
2.9 KiB
YAML
---
|
|
# Durcissement CIS Ubuntu 24.04 — AIDE (integrite fichiers) installe + verification quotidienne
|
|
# (checks 35758, 35759)
|
|
#
|
|
# IMPORTANT : /var/lib/docker (images/layers/volumes), les donnees de bases de donnees
|
|
# (postgresql, redis), wazuh-indexer, clamav et /var/log/audit sont exclus AVANT le premier
|
|
# aideinit — sans ca, le scan initial serait tres long et generait des faux positifs
|
|
# quotidiens (ces donnees changent en permanence par nature, leur integrite est geree par
|
|
# leurs propres mecanismes, pas par un FIM au niveau fichier).
|
|
#
|
|
# `aideinit` peut prendre plusieurs minutes (hash de la quasi-totalite du systeme de
|
|
# fichiers) — pas de reboot necessaire, mais consommation CPU/IO notable pendant le scan.
|
|
#
|
|
# `serial: 1` + `any_errors_fatal` : un host a la fois, arret immediat si un host casse.
|
|
#
|
|
# Usage recommande : tester sur un host avant le rollout complet :
|
|
# ansible-playbook hardening/playbook-aide-hardening.yml --limit pre-prod-uber
|
|
|
|
- name: Durcissement AIDE - integrite fichiers (CIS Ubuntu 24.04)
|
|
hosts: prod,pre-prod,bdd-redis-prod,replica-prod,infra,infra-runner,infra-utils,load-balancer
|
|
become: true
|
|
serial: 1
|
|
any_errors_fatal: true
|
|
|
|
tasks:
|
|
- name: Installer aide et aide-common
|
|
ansible.builtin.apt:
|
|
name:
|
|
- aide
|
|
- aide-common
|
|
state: present
|
|
update_cache: true
|
|
cache_valid_time: 3600
|
|
|
|
- name: Deployer les exclusions specifiques infra (avant le premier scan)
|
|
ansible.builtin.template:
|
|
src: ../templates/72_aide_infra_excludes.j2
|
|
dest: /etc/aide/aide.conf.d/72_aide_infra_excludes
|
|
owner: root
|
|
group: root
|
|
mode: "0644"
|
|
|
|
- name: Verifier si une base AIDE existe deja
|
|
ansible.builtin.stat:
|
|
path: /var/lib/aide/aide.db
|
|
register: aide_db
|
|
|
|
- name: Initialiser la base AIDE (aideinit) — peut prendre plusieurs minutes
|
|
ansible.builtin.command:
|
|
cmd: aideinit -y -f
|
|
when: not aide_db.stat.exists
|
|
changed_when: true
|
|
|
|
- name: Activer et demarrer la verification quotidienne (dailyaidecheck.timer)
|
|
ansible.builtin.systemd:
|
|
name: "{{ item }}"
|
|
masked: false
|
|
enabled: true
|
|
state: started
|
|
loop:
|
|
- dailyaidecheck.service
|
|
- dailyaidecheck.timer
|
|
|
|
- name: Verifier l'etat final
|
|
ansible.builtin.command:
|
|
cmd: systemctl show dailyaidecheck.timer -p LoadState,ActiveState
|
|
register: aide_timer_check
|
|
changed_when: false
|
|
failed_when: >
|
|
'LoadState=loaded' not in aide_timer_check.stdout or
|
|
'ActiveState=active' not in aide_timer_check.stdout
|
|
|
|
- name: Confirmer le succes pour cet host
|
|
ansible.builtin.debug:
|
|
msg: "✅ AIDE installé et vérification quotidienne active sur {{ inventory_hostname }}."
|