Syslog-Daten zuverlässig in Wazuh integrieren: Formate, Architektur und Best Practices

Einleitung

Viele Anwendungen und Appliances können Logs ausschließlich per Syslog oder HTTP ausliefern. In Wazuh-Umgebungen stellt sich daher regelmäßig die Frage, wie solche Daten zuverlässig, strukturiert und regelbasiert ausgewertet werden können. Obwohl Wazuh einen nativen Syslog-Empfang bietet, zeigen Community-Diskussionen und Best Practices, dass der Weg über dateibasierte Logsammlung häufig stabiler und flexibler ist. Dieser Artikel beleuchtet die technischen Hintergründe, geeignete Datenformate und empfohlene Architekturen für die Syslog-Integration in Wazuh.

Ausgangslage / Problemstellung

In der diskutierten Community-Situation sollte eine Anwendung Logdaten per Syslog an einen Wazuh Manager senden. Ein Wazuh Agent konnte auf dem Quellsystem nicht installiert werden, sodass nur ein Syslog-Ziel konfigurierbar war. Der Wazuh Manager lief als Single-Node-Deployment. Die zentrale Frage war, wie Syslog-Nachrichten aufgebaut sein müssen, damit Wazuh sie korrekt dekodiert und Regeln auslöst – und ob der direkte Syslog-Empfang im Manager dafür ausreicht.

Technische Analyse

Der Wazuh Manager unterstützt den Empfang von Syslog-Nachrichten über den <remote>-Block in der ossec.conf. Dabei lauscht der integrierte Logcollector auf UDP- oder TCP-Syslog und verarbeitet eingehende Nachrichten als Rohlogs. Diese Funktionalität ist bewusst einfach gehalten: Es existieren weder Queue-Mechanismen noch erweiterte Filter-, Transformations- oder Retry-Funktionen. Unter Last oder bei Paketverlust (insbesondere bei UDP) kann dies zu Logverlust führen.

Wazuh erwartet grundsätzlich standardkonforme Syslog-Nachrichten nach RFC 3164 oder RFC 5424. Klassische Felder wie Timestamp, Hostname und Programmname werden automatisch extrahiert. Der eigentliche Message-Teil wird anschließend durch Decoder verarbeitet. Ohne passende Decoder und Rules bleiben die Logs zwar im Archiv erhalten, erzeugen jedoch keine Alerts.

Ein wichtiger Punkt aus der Community-Diskussion: Wazuh ist intern stark auf dateibasierte Logsammlung optimiert. Sowohl der Agent als auch der Manager selbst können Logdateien überwachen und zuverlässig in die Analyse-Pipeline einspeisen. Genau hier setzt der empfohlene Architekturansatz an.

Lösung / Best Practices

1. Syslog nicht direkt, sondern indirekt einspeisen
Statt Anwendungen direkt an den Wazuh Manager zu senden, hat sich der Einsatz eines Syslog-Relays (z. B. rsyslog) bewährt. Dieses kann auf demselben Host wie der Wazuh Manager betrieben werden. rsyslog übernimmt dabei den Netzwerkempfang, puffert Nachrichten, filtert sie bei Bedarf und schreibt sie in dedizierte Logdateien.

2. Dateibasierte Logsammlung mit <localfile>
Die erzeugten Logdateien werden anschließend über <localfile>-Einträge in der ossec.conf eingebunden. Damit nutzt man den stabilsten und flexibelsten Logpfad von Wazuh. Filterung, Rotation und Rechteverwaltung lassen sich klar kontrollieren, und der Logcollector arbeitet deterministisch.

3. Geeignete Logformate wählen
Für klassische Syslog-Quellen reicht ein standardkonformes Syslog-Format aus. Moderne Anwendungen sollten, wenn möglich, JSON im Message-Teil verwenden. Strukturierte JSON-Logs lassen sich einfacher dekodieren, erweitern und korrelieren. Wazuh kann JSON-Inhalte ohne komplexe reguläre Ausdrücke verarbeiten, sofern sie sauber zeilenbasiert geliefert werden.

4. Decoder und Regeln gezielt ergänzen
Unabhängig vom Transportweg gilt: Erst passende Decoder und Rules machen aus Logs sicherheitsrelevante Alerts. Eigene Decoder sollten klar anwendungsbezogen sein und nur die benötigten Felder extrahieren. Regeln bauen darauf auf und bewerten Severity, Häufigkeit oder Kontext.

Lessons Learned / Best Practices

  • Der native Syslog-Empfang des Wazuh Managers ist funktional, aber bewusst minimalistisch.
  • Dateibasierte Logsammlung ist der bevorzugte und robusteste Ingestionspfad in Wazuh.
  • rsyslog als vorgeschaltetes Relay erhöht Zuverlässigkeit, Skalierbarkeit und Betriebssicherheit.
  • Strukturierte Logs (JSON) reduzieren langfristig Wartungsaufwand bei Decodern und Regeln.
  • Auch in Single-Node-Deployments lohnt sich eine saubere Trennung von Empfang, Speicherung und Analyse.

Fazit

Syslog ist ein verbreiteter, aber technisch limitierter Transportmechanismus. In Wazuh-Umgebungen sollte er daher nicht als direkter Analysepfad, sondern als Zubringer zu einer stabilen, dateibasierten Logsammlung verstanden werden. Die Kombination aus Syslog-Relay, klaren Logformaten und gezielten Decodern stellt sicher, dass auch agentenlose Quellen zuverlässig in die Wazuh-Sicherheitsarchitektur integriert werden können.

Mehr zu Wazuh …
https://wazuh.com/?utm_source=ambassadors&utm_medium=referral&utm_campaign=ambassadors+program

Mehr zum Wazuh Ambassador Program …
https://wazuh.com/ambassadors-program/?utm_source=ambassadors&utm_medium=referral&utm_campaign=ambassadors+program

https://wazuh.slack.com/archives/C0A933R8E/p1767890484473639