Description
The Linux audit framework records events chosen by rules (system calls, file accesses, program
runs) with the identity of the user who logged in. auditd (package auditd) receives these
records from the kernel and writes them to /var/log/audit/audit.log; audispd-plugins adds
the plugins that forward them (syslog, remote server). Neither is installed by default.
This control requires both packages and the auditd service enabled and running.
Rationale
The audit log is the detailed, per-user record that investigations rely on after an intrusion. It is also required by the audit rules controls CB-DEB-AUDIT-016 to CB-DEB-AUDIT-029.
Impact
auditd uses a few megabytes of memory. The disk space used depends on the rules and on the activity; see CB-DEB-AUDIT-013 and CB-DEB-AUDIT-014.
Setting
| Location | auditd and audispd-plugins packages, auditd.service |
| Default | Not installed |
| Recommended | Installed, auditd.service enabled and active |
Audit
- Run
dpkg-query -W -f='${Package} ${Status}\n' auditd audispd-plugins. Both must end withinstalled. - Run
systemctl is-enabled auditdandsystemctl is-active auditd. They must printenabledandactive.
Automated: every check must pass. Scanners report each check by its id.
auditd
auditd is installed.
name: auditd
state: installed
plugins
audispd-plugins is installed.
name: audispd-plugins
state: installed
service
auditd.service is enabled.
unit: auditd.service
state: enabled
Remediation
Run apt-get install auditd audispd-plugins, then systemctl enable --now auditd.
| Restart | none |
| Disruption | none |
Rollback
Run apt-get purge auditd audispd-plugins.
auditd
Generated from check auditd: the engine writes the fix for every output, it sets the expected value and the check runs again after.
plugins
Generated from check plugins: the engine writes the fix for every output, it sets the expected value and the check runs again after.
service
Generated from check service: the engine writes the fix for every output, it sets the expected value and the check runs again after.
Each release turns these fixes into remediate.sh and an Ansible role per profile: dry run by default, a fix runs only when its check fails.
References
- auditd.conf(5), Debian manual pages Debian, vendor-doc, accessed 2026-10-18
- ANSSI-BP-028 v2.0 - Recommandations de configuration d'un système GNU/Linux (R73) ANSSI, guide, accessed 2026-10-18
Mappings
| Framework | ID | Relation | Note |
|---|---|---|---|
| ANSSI-BP-028 - Recommandations de configuration d'un système GNU/Linux2.0 | R73 | partial | R73 also lists the events to record, covered by CB-DEB-AUDIT-016 to 029. |
| ANSSI-BP-028 - Recommandations de configuration d'un système GNU/Linux2.0 | R33 | related | |
| NIST SP 800-53 Rev. 55.1.1 | AU-12 | related | |
| NIST SP 800-53 Rev. 55.1.1 | AU-3 | related |
How this control relates to the other framework's: equivalent, stricter, looser, partial or related.
Threats mitigated
People and lifecycle
| Authors |
|
| Verified | 2026-10-18 by Sn0wAlice on 12, Proxmox VM, Debian 12 genericcloud image, kernel 6.1.0-54-cloud-amd64, BIOS boot. Fails on fresh install; packages installed and auditd enabled and active; kept after reboot. |
| Verified | 2026-10-18 by Sn0wAlice on 13, Proxmox VM, Debian 13 genericcloud image, kernel 6.12.113+deb13-cloud-amd64, BIOS boot. Fails on fresh install; packages installed and auditd enabled and active; kept after reboot. |
| Introduced in | v0.1.0 |
| Created, updated | 2026-10-18, 2026-10-18 |
| Translations | fr |