Wazuh Migration & Wiederherstellung

RBAC, Rollen, User und Agent-Gruppen korrekt sichern und wiederherstellen

Einleitung

Nach einer Neuinstallation oder Migration eines Wazuh-Clusters stellt sich häufig heraus, dass zwar Agenten, Indizes und Logs wieder vorhanden sind – aber sicherheitsrelevante Metadaten fehlen. Dazu zählen insbesondere:

  • Wazuh RBAC (User, Rollen, Mappings)
  • OpenSearch / Indexer Security
  • Agent-Gruppen und Gruppenmitgliedschaften

Dieser Artikel erklärt wo diese Informationen gespeichert sind, wie sie korrekt gesichert werden und welche Restore-Strategien zukunftssicher sind, inklusive offizieller Quellen.


1. Wazuh RBAC (User, Rollen, Mappings)

Was ist Wazuh RBAC?

Wazuh RBAC steuert:

  • Dashboard-Benutzer
  • Rollen (z. B. Analyst, Admin)
  • Zugriffsrechte auf Agents, Gruppen und Module

⚠️ Wichtig:
Wazuh RBAC ist nicht identisch mit OpenSearch Security.

Wo sind RBAC-Daten gespeichert?

  • Intern in der Wazuh Manager RBAC-Datenbank
  • Nicht in YAML-Dateien
  • Nicht im Indexer

➡️ Eine direkte Dateiwiederherstellung ist nicht vorgesehen.

Empfohlene Restore-Methode

Automatisierung über die Wazuh API

Damit lassen sich:

  • Benutzer anlegen
  • Rollen erstellen
  • Rollen Usern zuweisen
  • Zugriffe reproduzierbar konfigurieren

Offizielle Quellen

Best Practice

RBAC niemals nur sichern – sondern als Code definieren.
API-Skripte (curl, Ansible, Terraform) sind versionssicher und migrationsfest.


2. OpenSearch / Wazuh Indexer Security

Was gehört dazu?

  • Indexer-User
  • Rollen
  • Role Mappings
  • Zertifikatsbasierte Zugriffe

Diese Ebene ist OpenSearch Security, nicht Wazuh-RBAC.

Automatisierung & Restore

✅ Vollständig über die OpenSearch Security API

Offizielle Quellen

Typischer Fehler

„Wazuh neu installiert, Indexer Security vergessen → alle User/Rollen weg“

➡️ Indexer Security immer separat sichern, z. B.:

  • API-Export
  • Snapshots
  • Versionskontrollierte YAML-Definitionen

3. Agent-Gruppen & Gruppenmitgliedschaften

Häufiges Symptom

  • Gruppen existieren (agent_groups -l)
  • Alle Agents sind wieder in default
  • /var/ossec/etc/shared wurde bereits restored

Ursache (entscheidend!)

Agent-Gruppenzuordnungen liegen nicht in shared/.

Tatsächlicher Speicherort

/var/ossec/queue/db/global.db
  • SQLite-Datenbank
  • Enthält u. a.:
    • group
    • belongs

Korrektes Restore-Verfahren

  1. Nur auf dem Master-Manager
  2. wazuh-manager stoppen
  3. global.db aus Backup zurückkopieren
  4. Rechte prüfen
  5. wazuh-manager starten

➡️ Danach sind alle Agent-Gruppen wieder korrekt zugeordnet

Quellen


4. Empfohlene Backup-Strategie (Best Practice)

Wazuh Manager

Sichern:

/var/ossec/etc/
/var/ossec/etc/shared/
/var/ossec/queue/db/global.db   ← kritisch

Optional:

/var/ossec/logs/

Wazuh RBAC

  • API-Skripte für:
    • User
    • Rollen
    • Mappings
  • Keine manuelle DB-Bearbeitung

Wazuh Indexer


5. Zusammenfassung

BereichSpeicherortRestore-Methode
Wazuh RBACinterne DBWazuh API
Indexer SecurityOpenSearchSecurity API
Agent-Gruppenglobal.dbDatei-Restore
Shared Config/etc/sharedDatei-Restore

Fazit

  • Nicht alles in Wazuh ist dateibasiert
  • Agent-Gruppen = global.db
  • RBAC = API-Automatisierung
  • Indexer Security = OpenSearch Security API

🔐 Backups sind wichtig – reproduzierbare Automatisierung ist entscheidend.

https://wazuh.slack.com/archives/C07CCCCGHHP/p1765909975641159