Was dieses Modul tut #
auditd ist das Audit-Subsystem des Linux-Kernels: es protokolliert, wer sich anmeldet, wer sudo nutzt, welche sensiblen Dateien verändert werden und welche Systemaufrufe ausgeführt werden. Es ist die Grundlage fast jeder Compliance-Anforderung (CIS, PCI, ISO). Das Problem ist, dass seine nativen Werkzeuge — auditctl, ausearch, aureport — eine sperrige und wenig freundliche Syntax haben.
Das Modul audit legt eine lesbare Schicht darüber: es sagt dir auf einen Blick, ob auditd aktiv ist und die Regeln geladen sind, listet die aktuellen Ereignisse gefiltert nach Zeit oder nach Key einer Regel, gibt dir eine Zusammenfassung im Berichtsstil (Logins, sudo/Authentifizierung und Dateiänderungen) und lässt dich die aktiven CIS-Audit-Regeln abfragen — alles, ohne dass du dir die Flags jedes Werkzeugs merken musst.
Die Regeln von auditd werden meist im Modus immutable geladen (gesperrt bis zum nächsten Neustart), damit niemand sie im laufenden Betrieb deaktivieren kann. Deshalb warnt reload, wenn eine Änderung einen Reboot erfordert, anstatt sie mit Gewalt anzuwenden.
Häufige Aufgaben #
Wähle, was du tun möchtest. Jedes Rezept bringt den Befehl schon fertig mit — kopiere ihn, passe ihn bei Bedarf an und drücke Kopieren.
1
Prüfen, ob das Audit aktiv ist
Bestätigt, dass auditd läuft, mit geladenen Regeln und ohne Backlog.
Verbinde dich per SSH mit deinem Server über den Benutzer ubuntu und starte:
$ sudo imaxe audit statusBrauchst du die Ausgabe für ein Skript oder ein Dashboard? Füge --json hinzu:
$ sudo imaxe audit status --json2
Die aktuellen Ereignisse ansehen
Sieh dir an, was passiert ist, gefiltert nach Zeit oder nach Key einer Regel.
Liste die heutigen Ereignisse in einer lesbaren Zusammenfassung:
$ sudo imaxe audit events --since todayMöchtest du nur die Ereignisse einer bestimmten Regel (über ihren Key) und als JSON? Kombiniere --key und --json:
$ sudo imaxe audit events --key identity --jsonausearch zu merken. Übergibst du kein --since, wird das Standardfenster aus audit.yml verwendet.3
Eine Tageszusammenfassung ziehen
Ein Bericht im aureport-Stil: Logins, sudo/auth und Dateiänderungen.
Fordere die aggregierte Aktivitätszusammenfassung an:
$ sudo imaxe audit summarysudo-Nutzungen und Dateiänderungen registriert wurden.4
Die Regeln ansehen oder neu laden
Sieh dir die aktiven Regeln an und wende Änderungen unter Beachtung von immutable an.
Liste die gerade jetzt geladenen Audit-Regeln (entspricht auditctl -l):
$ sudo imaxe audit rules listWenn du die Regeldateien bearbeitet hast, lade sie neu. Ist das System im Modus immutable, warnt dich der Befehl, dass ein Neustart nötig ist:
$ sudo imaxe audit rules list --json
$ sudo imaxe audit reloadWenn events leer bleibt, prüfe zuerst mit status, dass auditd aktiv ist und Regeln geladen sind. Vielleicht ist das Fenster von --since zu kurz, oder keine Regel nutzt den Key, nach dem du filterst. Sieh dir die Regeln mit rules list an.
Synopsis #
imaxe audit <subcomando> [<subcomando anidado>] [--since T] [--key K] [--json]Alle Unterbefehle lesen aus dem Audit-Subsystem, das nur als root zugänglich ist (nutze sudo). Füge --json zu status, events oder rules list hinzu, um maschinenlesbare Ausgabe zu erhalten, geeignet für Scripting und Dashboards.
Unterbefehle #
| Unterbefehl | Was er tut | Relevante Flags |
|---|---|---|
| status | Status: auditd aktiv, geladene Regeln, immutable-Modus und Backlog. | --json |
| events | Listet aktuelle, filterbare Ereignisse in lesbarer Zusammenfassung. | --since, --key, --json |
| summary | Zusammenfassung im aureport-Stil: Logins, sudo/auth und Dateiänderungen. | — |
| rules | Verwaltungsgruppe der Audit-Regeln. Erfordert einen verschachtelten Unterbefehl. | — |
| rules list | Listet die aktiven Regeln (entspricht auditctl -l). | --json |
| reload | Lädt die Regeln neu; beachtet immutable und warnt, wenn ein Reboot nötig ist. | — |
Argumente und Flags #
| Flag | Typ | Standard | Beschreibung |
|---|---|---|---|
| --since | string | audit.yml | Bei events: ab wann gelistet wird (z. B. today, recent, 'now-1 hour'). Wird es weggelassen, wird default_since aus audit.yml verwendet. |
| --key | string | — | Bei events: filtert nach dem Key einer auditd-Regel (z. B. identity). |
| --json | bool | false | Bei status, events und rules list: gibt das Ergebnis als strukturiertes JSON über stdout aus. |
summary, rules und reload nehmen keine Flags an: sie werden unverändert ausgeführt. Denk daran, dass rules immer den verschachtelten Unterbefehl list benötigt.
Dateien und Pfade #
| Pfad | Inhalt |
|---|---|
| /etc/imaxe/audit.yml | Konfiguration des Moduls: Standardfenster von events (default_since) und weitere Optionen. |
| /etc/audit/audit.rules | Beim Start von auditd geladene Audit-Regeln (CIS-Basis). |
| /etc/audit/rules.d/ | Regelfragmente, die zum endgültigen Satz zusammengesetzt werden. |
| /var/log/audit/audit.log | Ereignisprotokoll, das auditd schreibt und das events/summary abfragen. |
Beispiel für audit.yml:
events:
default_since: todayExit-Codes und Logs #
Jede Ausführung liefert einen Code, den du mit echo $? prüfen kannst — nützlich zum Verketten in Skripten:
Verfolge das Log live, während du Fehler suchst:
$ sudo journalctl -u auditd -f
$ sudo tail -f /var/log/audit/audit.logFehlerbehebung #
| Symptom | Wahrscheinliche Ursache | Lösung |
|---|---|---|
| Es erscheint AUDITD (Code 3) | Der Dienst auditd läuft nicht. | Starte ihn mit systemctl start auditd und wiederhole imaxe audit status. |
events liefert nichts zurück | Fenster von --since zu kurz oder nicht existierender Key. | Erweitere --since (z. B. 'now-1 hour') oder prüfe die Keys mit rules list. |
reload warnt vor Reboot | Die Regeln sind im Modus immutable (gesperrt bis zum Neustart). | Plane einen Neustart, um die Änderungen anzuwenden; bis dahin gelten die vorherigen Regeln. |
| Es erscheint USAGE (Code 2) | rules wurde ohne den verschachtelten Unterbefehl aufgerufen. | Nutze imaxe audit rules list: rules erfordert immer einen Unterbefehl. |
Steckst du beim Modul Audit fest?
Schreib uns mit der Ausgabe von «imaxe <module> status --json» und wir antworten dir schnell.