Wazuh-Indexer: Warum 130 GB/Tag nicht einfach 11,7 TB für 90 Tage sind (und wie du sauber dimensionierst)

Ausgangslage:Du planst eine Wazuh-Umgebung mit ~130 GB Log-Ingestion pro Tag (hauptsächlich High-Volume-Quellen wie Server, Cloud-Logs, Network Devices) und 90 Tage Retention. Dazu ein Indexer-Cluster (≥3 Nodes) mit 1 Replica. 1) Die Grundrechnung (Raw-Volumen) Das ist aber nicht das, was am Ende auf dem Indexer liegt. 2) Warum der Index größer wird als die Rohdaten OpenSearch/Wazuh … Weiterlesen

LANCOM Switches und Access Points sauber in Wazuh dekodieren: Warum Syslog-Header „verschwinden“ und wie program_name-Decoder Kollisionen vermeiden

Einleitung Netzwerkgeräte wie LANCOM Switches und Access Points liefern häufig „syslog-ähnliche“ Zeilen, die auf den ersten Blick trivial zu parsen sind: Zeitstempel, Host/IP, Programmkennung, Nachricht. In Wazuh ist genau dieser Header jedoch gleichzeitig Fluch und Segen: Der integrierte Predecoder erkennt solche Header automatisch und extrahiert Felder wie timestamp, hostname und program_name bereits vor der eigentlichen … Weiterlesen

Wazuh IT-Hygiene: Entfernte Pakete im Dashboard bleiben sichtbar – Ursachen & Lösungen

Einleitung Viele Wazuh-Admins nutzen die IT-Hygiene-Funktion, um installierte Software-Pakete über alle Endpunkte hinweg zentral zu überwachen. Ein typisches Problem dabei: Auch nachdem Pakete auf Endpunkten deinstalliert wurden, erscheinen sie weiterhin im IT-Hygiene-Dashboard. Dieser Artikel erklärt die Ursachen, die Funktionsweise des Wazuh-Syscollector-Moduls und gibt praxisnahe Tipps zur Fehleranalyse und -behebung. Ausgangslage / Problemstellung Ein Nutzerbericht aus … Weiterlesen

Wazuh/ModSecurity JSON: Warum transaction.messages nicht weiter dekodiert wird – und wie du es sauber löst

Problem In deinem Event wird transaction.messages in Phase 2 zwar als Feld erkannt, aber der Inhalt wird nicht weiter „aufgefächert“ (also keine transaction.messages[0].details.ruleId usw.). Der Grund ist simpel: Für Wazuh ist transaction.messages ein einzelner Feldwert (String) – selbst wenn er „wie JSON“ aussieht. In deinem Decode-Output sieht man das auch: Das ist kein JSON-Array-Typ, sondern … Weiterlesen

Rate Limiting für Custom Email Alerts in Wazuh: Warum email_maxperhour nicht greift und was stattdessen vorgesehen ist

Einleitung E-Mail-Benachrichtigungen gehören zu den ältesten und zugleich kritischsten Alerting-Mechanismen in SIEM-Umgebungen. Wazuh bietet hierfür sowohl eine integrierte E-Mail-Funktion als auch die Möglichkeit, Custom Email Alerts über Integrationen umzusetzen. In der Praxis entsteht dabei häufig Verwirrung: Während das Standard-Alerting eine native Drosselung über <email_maxperhour> unterstützt, fehlt eine vergleichbare Option für Custom Integrations. Dieser Artikel ordnet … Weiterlesen

Wazuh Custom Rule greift nicht bei JSON-Logs: Sonderzeichen in korrekt escapen

Ausgangslage Ein Nutzer wollte ModSecurity-Events im JSON-Format mit einer eigenen Wazuh-Regel erkennen.Die Regel sah korrekt aus, erzeugte aber keine Alerts, obwohl die Events sauber dekodiert wurden. Regel (ursprünglich): Beispiel-Event (Auszug): Trotz passendem Feldinhalt wurde kein Alert generiert. Ursache Der entscheidende Punkt:Das <field>-Element in Wazuh-Regeln nutzt OS_Regex (osregex) – nicht einen reinen String-Vergleich. In osregex haben … Weiterlesen

Wazuh Cross-Cluster Search (CCS): Warum ein klassischer Read-Only-User nicht ausreicht und welche RBAC-Rollen wirklich benötigt werden

Einleitung Cross-Cluster Search (CCS) ermöglicht es, mehrere Wazuh-Cluster zentral über einen Wazuh-Indexer abzufragen und die aggregierten Daten im Dashboard darzustellen. Gerade in Multi-Site- oder Mandanten-Umgebungen ist CCS ein essenzieller Baustein für zentrale Security-Analysen, SOC-Betrieb und konsolidierte Incident-Response-Prozesse. In der Praxis zeigt sich jedoch häufig ein Problem: Ein nach Dokumentation erstellter Read-Only-User kann sich zwar am … Weiterlesen

Wazuh 4.11 stoppt Datenaufnahme durch Shard-Limit im Indexer: Ursachen, Sofortfix und nachhaltige Retention-Strategie

Einleitung Wenn im Wazuh Dashboard plötzlich keine neuen Events mehr erscheinen, wirkt das zunächst wie ein Pipeline-Problem (Manager, Filebeat, Indexer, Dashboard). In der Praxis ist die Ursache häufig eine Schutzgrenze im Wazuh Indexer (OpenSearch): Sobald das Cluster das maximale Shard-Limit erreicht, scheitert die Index-Erstellung – und damit bricht die Datenaufnahme ab. Besonders in Single-Node-Setups mit … Weiterlesen

Wazuh OpenClaw Autopilot mit Ollama statt Claude betreiben: Air-gapped Setup ohne Tailscale und ohne Cloud-API-Keys

Einleitung „Autonomous SOC“-Ansätze klingen attraktiv: Alerts automatisch triagieren, zusammenhängende Incidents korrelieren, Evidence Packs erzeugen und Response-Pläne vorschlagen – idealerweise mit Human-in-the-Loop und klaren Policies. In der Praxis scheitert die Evaluierung aber oft an zwei Punkten: (1) das Projekt ist auf Cloud-LLMs (z. B. Claude) vorgeprägt und (2) die Referenzinstallation nutzt Tailscale für Zero-Trust-Networking. Dieser Beitrag … Weiterlesen

Sophos Firewall Logs in Wazuh: Warum OpenSearch Data Streams (noch) nicht nativ gehen – und wie man Logs sauber in eigene Indizes routet und per ISM „datastream-ähnlich“ verwaltet

Einleitung (Einordnung, Relevanz für Security/SIEM/Wazuh) Netzwerk- und Firewall-Telemetrie wie Sophos-SSL-Rejects ist für Detection Engineering und Threat Hunting wertvoll – vorausgesetzt, die Daten landen strukturiert, performant und mit sinnvoller Lifecycle-Strategie im Indexer. In OpenSearch sind Data Streams ein komfortables Modell für kontinuierliche Logdaten. In Wazuh ist der Standardpfad jedoch weiterhin auf zeitbasierte Indizes plus Index State … Weiterlesen