Wer sein Synology NAS mit Wazuh überwacht, stolpert früher oder später über Community-Projekte wie dieses:
GitHub:
Tomo-9925 / wazuh-synology-dsm-decoder-and-rules
–synology-rules.xml(Regeln)
–synology-syslog.xml(Decoder)
Genau das wollte auch ein User im Wazuh-Community-Channel einbinden – und bekam nur:
XML syntax error
Die Ursache war am Ende nicht „kaputte XML“, sondern die Reihenfolge & Vollständigkeit der Integration.
1. Warum die Regeln alleine nicht funktionieren
Im Regelset sieht man z. B.:
<rule id="100001" level="5">
<decoded_as>synology-connection</decoded_as>
...
</rule>
Damit sagt die Regel im Klartext:
„Ich erwarte, dass es einen Decoder gibt, der Events als
synology-connectiondekodiert.“
Wenn du jetzt nur synology-rules.xml einbindest, aber nicht die dazugehörigen Decoder aus synology-syslog.xml, passiert Folgendes:
- Wazuh lädt das Regelset
- Sieht
<decoded_as>synology-connection</decoded_as> - Findet dazu keinen passenden Decoder-Namen
- Beim Laden des kompletten Rulesets kann das zu Syntax- / Validierungsfehlern führen
Ergebnis:
Dein Manager startet entweder nicht sauber, oder du bekommst Fehler à la „XML syntax error“, obwohl die Datei selbst formal korrekt ist.
2. Wichtig: Decoder und Regeln – und in der richtigen Reihenfolge
Damit das Ganze sauber läuft, brauchst du:
- Decoder-Datei (
synology-syslog.xml)
→ Sie sorgt dafür, dass Synology-Syslog-Nachrichten in interne Felder und einen Decoder-Namen (synology-connection,synology-authetc.) übersetzt werden. - Regel-Datei (
synology-rules.xml)
→ Sie baut auf diesen Decoder-Namen auf (<decoded_as>…</decoded_as>) und bewertet die Events.
Typischer Einbau (Beispiel)
Auf dem Wazuh-Manager:
- Dateien ablegen, z. B.:
/var/ossec/etc/decoders/synology-syslog.xml
/var/ossec/etc/rules/synology-rules.xml
- Syntax vorab testen (optional, aber sinnvoll):
/var/ossec/bin/wazuh-logtest
- Wazuh-Manager neu starten:
systemctl restart wazuh-manager
In dem Slack-Thread war genau das die Lösung:
User hatte nur die Regeln eingebunden → Fehler
Dann auch die Decoder-Datei eingebunden → alles lief.
3. Warum die „Reihenfolge“ wichtig ist
In der Community-Antwort hieß es sinngemäß:
„War mir nicht bewusst, dass die Reihenfolge wichtig ist. Jetzt funktioniert’s.“
Gemeint ist nicht nur die Lade-Reihenfolge (Decoder werden generell vor Regeln geladen), sondern vor allem:
- Du kannst keine Regeln verwenden, die sich auf einen Decoder beziehen, den es (noch) nicht gibt
- In vielen Community-Beispielen sind Decoder und Regeln getrennte Dateien – du musst beides übernehmen, nicht nur das, was „spannender“ aussieht (Spoiler: das sind meistens die Regeln)
4. Troubleshooting-Tipps bei XML-/Ruleset-Fehlern
Wenn du wieder mal an einem „XML syntax error“ verzweifelst:
- In die Logs schauen
- Auf dem Manager:
cat /var/ossec/logs/ossec.log - Dort steht meist ziemlich klar, welche Datei und manchmal sogar welche Zeile Probleme macht.
- Auf dem Manager:
- Prüfen, ob alle referenzierten Decoder existieren
- Kommen in den Regeln
<decoded_as>xyz</decoded_as>oder<if_decoder_name>xyz</if_decoder_name>vor? - Gibt es dazu wirklich einen
<decoder name="xyz">in irgendeiner Datei unteretc/decoders/?
- Kommen in den Regeln
- Regeln testweise auskommentieren / entfernen
- Wenn du unsicher bist, ob eine neu hinzugefügte Datei das Problem ist:
- Datei kurz entfernen oder umbenennen
wazuh-managerneu starten- Wenn es dann läuft → Fokus auf diese Datei
- Wenn du unsicher bist, ob eine neu hinzugefügte Datei das Problem ist:
5. Fazit
Aus dem kleinen Synology-Beispiel lässt sich eine generelle Lektion für Wazuh mitnehmen:
- Decoder sind die Grundlage – Regeln sind das „Gehirn“ darüber.
- Community-Regeln, die
decoded_asverwenden, brauchen immer die passenden Decoder-Dateien. - XML-Fehler bedeuten nicht automatisch „kaputte Datei“ – oft fehlt einfach ein Referenz-Baustein.
Wenn du magst, kann ich als nächsten Blogpost etwas machen wie:
- „How-To: Synology DSM sauber in Wazuh integrieren (Syslog, Decoder, Regeln, Index-Felder)“
oder - „Checkliste: So integrierst du Community-Decoders & Rulesets in Wazuh, ohne den Manager zu schrotten“
https://wazuh.slack.com/archives/C0A933R8E/p1764768132452479