Wazuh Logging Cheat-Sheet
Version vom 9. September 2026, 10:10 Uhr von Thomas.will (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „=Wazuh Logging — Cheat Sheet= Wo was liegt und womit man nachsieht, wenn im Dashboard nichts ankommt. Jeder Abschnitt ist einer Maschine zugeordnet: * '''[A…“)
Wazuh Logging — Cheat Sheet
Wo was liegt und womit man nachsieht, wenn im Dashboard nichts ankommt.
Jeder Abschnitt ist einer Maschine zugeordnet:
- [A] = auf dem Agenten (z.B. www, waf)
- [M] = auf dem Manager (wazuh.dkbi.com)
Wo liegt was
| Datei | Maschine | Inhalt |
|---|---|---|
| /var/ossec/logs/ossec.log | A + M | Betriebsmeldungen der Dienste. Der einzige Log auf der Agent-Seite |
| /var/ossec/logs/alerts/alerts.json | M | Alles, was eine Regel getroffen hat |
| /var/ossec/logs/alerts/alerts.log | M | Dasselbe im Klartext |
| /var/ossec/logs/archives/archives.json | M | Alles, auch ohne Regeltreffer — nur bei aktivem logall_json |
| /var/ossec/logs/active-responses.log | A | Ausgeführte Active Responses |
Merksatz: Der Agent liest und sendet, er führt keine Buchhaltung. Was gesendet wurde, sieht man nur auf dem Manager.
[A] Agent — was wird eingelesen
- Welche Dateien überwacht der Logcollector?
grep "Analyzing file" /var/ossec/logs/ossec.log
- Konfiguration testen, bevor neu gestartet wird
/var/ossec/bin/wazuh-logcollector -t
- Jede gelesene Zeile sehen — in /var/ossec/etc/local_internal_options.conf
logcollector.debug=2
systemctl restart wazuh-agent
tail -f /var/ossec/logs/ossec.log
Danach wieder auf 0 setzen.
- Verbindung zum Manager
grep -E "Connected to the server|Unable to connect" /var/ossec/logs/ossec.log | tail -5
[M] Manager — was kommt an
- Agentenliste mit Status
/var/ossec/bin/agent_control -l
- Lauscht der Manager?
ss -lnup | grep 1514
- Dienste
/var/ossec/bin/wazuh-control status
- Konfiguration prüfen, ohne neu zu starten
/var/ossec/bin/wazuh-analysisd -t
[M] Live mitlesen
- Alerts
tail -f /var/ossec/logs/alerts/alerts.json | jq -c '[.agent.name, .rule.id, .rule.description]'
- Alles, auch ohne Treffer — vorher in /var/ossec/etc/ossec.conf im <global>-Block
<logall_json>yes</logall_json>
systemctl restart wazuh-manager
tail -f /var/ossec/logs/archives/archives.json | jq -c '[.agent.name, .decoder.name, .rule.id // "-", .full_log]'
Achtung: Archives werden nicht rotiert. Nach der Übung wieder auf no.
- Nach einem Agenten filtern
tail -f /var/ossec/logs/archives/archives.json | jq -c 'select(.agent.name=="www") | .full_log'
[M] Regeln und Decoder testen
- Interaktiv — Logzeile reinpasten, Ergebnis sofort
/var/ossec/bin/wazuh-logtest
- Phase 1: Vordekodierung (Zeitstempel, Hostname)
- Phase 2: Decoder und extrahierte Felder
- Phase 3: Regel-ID und Level — bleibt leer, wenn keine Regel greift
- Aus einer Datei heraus
tail -1 /var/log/coraza/audit.log | /var/ossec/bin/wazuh-logtest
- Regeln auf Dopplungen prüfen — doppelte IDs verhindern den Start des Managers
grep -rn 'rule id="1001' /var/ossec/etc/rules/
Typische Ursachen
| Symptom | Prüfen auf | Ursache |
|---|---|---|
| Gar nichts im ossec.log zur Datei | A | <localfile> fehlt oder Pfad falsch |
| HTTP wird geloggt, HTTPS nicht | A | SSL-vhost schreibt in ssl_access.log |
| Datei da, aber keine Zeilen | A | Angriff kam vor dem Agent-Neustart — nur Neues wird gelesen |
| In archives.json, aber kein Alert | M | Keine Regel greift. Mit wazuh-logtest gegenprüfen |
| Manager startet nicht | M | Doppelte Regel-ID oder XML-Fehler — steht im ossec.log |
| Nichts erscheint, obwohl alles stimmt | — | Zu wenig Verkehr. Mit einer Schleife 20 Requests erzeugen |
Nach der Übung aufräumen
- [A] in local_internal_options.conf
logcollector.debug=0
- [M] in ossec.conf
<logall_json>no</logall_json>