Zum Hauptinhalt springen
Zurück zur Kategorie

Wazuh SIEM Einrichtung: Sicherheitsinformations- und Ereignismanagement

Wazuh Docker-Installation, Agent-Deployment, Log-Analyse, Dateiintegritätsüberwachung, Schwachstellenscanning, Compliance-Auditing und Dashboard.

Lesezeit: 20 Min. Monitoring
wazuhsiemsicherheitlog-analyseidscompliancedocker
Autor
REXE Teknoloji Network & Security Team
Redaktion
REXE Teknoloji Technical Editorial
Erstveröffentlichung
Letzte Aktualisierung

Wazuh SIEM Einrichtung: Sicherheitsinformations- und Ereignismanagement

Wazuh ist eine Open-Source-Sicherheitsplattform. Sie bietet umfassende Sicherheitsfunktionen wie SIEM, IDS, Schwachstellenscanning, Dateiintegritätsüberwachung und Compliance-Auditing in einer einzigen Plattform.

Was ist Wazuh?

Kernkomponenten und Funktionen:

  • Wazuh Server: Zentraler Verwaltungs- und Analyseserver
  • Wazuh Indexer: OpenSearch-basierte Log-Indizierung und Suche
  • Wazuh Dashboard: Kibana-basierte Weboberfläche
  • Wazuh Agent: Leichtgewichtiger Agent auf Endpunkten
  • Log-Analyse: Echtzeit-Log-Sammlung und Analyse
  • FIM: Dateiintegritätsüberwachung
  • Schwachstellenerkennung: Vulnerability Scanning
  • Compliance: PCI DSS, GDPR, HIPAA Auditing
  • Active Response: Automatische Bedrohungsreaktion

Docker-Installation

hljs bash
git clone https://github.com/wazuh/wazuh-docker.git -b v4.9.0
cd wazuh-docker/single-node
docker compose -f generate-indexer-certs.yml run --rm generator
docker compose up -d

Dashboard-Zugang:

https://SERVER_IP:443
Benutzername: admin
Passwort: SecretPassword

Agent-Installation

Linux Agent

hljs bash
curl -s https://packages.wazuh.com/key/GPG-KEY-WAZUH | gpg --no-default-keyring --keyring gnupg-ring:/usr/share/keyrings/wazuh.gpg --import && chmod 644 /usr/share/keyrings/wazuh.gpg
echo "deb [signed-by=/usr/share/keyrings/wazuh.gpg] https://packages.wazuh.com/4.x/apt/ stable main" | tee -a /etc/apt/sources.list.d/wazuh.list

sudo apt update
sudo WAZUH_MANAGER='WAZUH_SERVER_IP' apt install wazuh-agent -y
sudo systemctl daemon-reload
sudo systemctl enable --now wazuh-agent

Windows Agent

hljs powershell
Invoke-WebRequest -Uri https://packages.wazuh.com/4.x/windows/wazuh-agent-4.9.0-1.msi -OutFile wazuh-agent.msi
msiexec.exe /i wazuh-agent.msi /q WAZUH_MANAGER='WAZUH_SERVER_IP'
NET START WazuhSvc

Agent-Verwaltung

hljs bash
sudo /var/ossec/bin/agent_control -l
sudo /var/ossec/bin/agent_control -i AGENT_ID

Log-Analyse

Syslog-Sammlung

hljs xml
<ossec_config>
  <remote>
    <connection>syslog</connection>
    <port>514</port>
    <protocol>udp</protocol>
    <allowed-ips>192.168.1.0/24</allowed-ips>
  </remote>
</ossec_config>

Benutzerdefinierte Log-Überwachung

hljs xml
<ossec_config>
  <localfile>
    <log_format>syslog</log_format>
    <location>/var/log/myapp/app.log</location>
  </localfile>
  <localfile>
    <log_format>json</log_format>
    <location>/var/log/myapp/access.json</location>
  </localfile>
</ossec_config>

Benutzerdefinierte Decoder und Regeln

hljs xml
<decoder name="myapp">
  <program_name>myapp</program_name>
</decoder>

<decoder name="myapp-auth">
  <parent>myapp</parent>
  <regex>Authentication (\S+) for user (\S+) from (\S+)</regex>
  <order>status, user, srcip</order>
</decoder>
hljs xml
<group name="myapp,">
  <rule id="100001" level="5">
    <decoded_as>myapp-auth</decoded_as>
    <match>Authentication failed</match>
    <description>MyApp: Fehlgeschlagener Anmeldeversuch</description>
  </rule>

  <rule id="100002" level="10" frequency="5" timeframe="120">
    <if_matched_sid>100001</if_matched_sid>
    <same_source_ip />
    <description>MyApp: Brute-Force-Angriff erkannt</description>
  </rule>
</group>

Dateiintegritätsüberwachung (FIM)

hljs xml
<ossec_config>
  <syscheck>
    <disabled>no</disabled>
    <frequency>43200</frequency>
    <scan_on_start>yes</scan_on_start>
    <directories check_all="yes" realtime="yes">/etc,/usr/bin,/usr/sbin</directories>
    <directories check_all="yes" realtime="yes">/var/www/html</directories>
    <ignore>/etc/mtab</ignore>
    <ignore type="sregex">.log$|.swp$</ignore>
  </syscheck>
</ossec_config>

Schwachstellenerkennung

hljs xml
<ossec_config>
  <vulnerability-detector>
    <enabled>yes</enabled>
    <interval>5m</interval>
    <run_on_start>yes</run_on_start>
    <provider name="canonical">
      <enabled>yes</enabled>
      <os>focal</os>
      <os>jammy</os>
    </provider>
    <provider name="nvd">
      <enabled>yes</enabled>
      <update_interval>1h</update_interval>
    </provider>
  </vulnerability-detector>
</ossec_config>

Active Response

hljs xml
<ossec_config>
  <active-response>
    <command>firewall-drop</command>
    <location>local</location>
    <rules_id>100002</rules_id>
    <timeout>3600</timeout>
  </active-response>
</ossec_config>

Compliance-Auditing

Wazuh bietet Compliance-Auditing für verschiedene Sicherheitsstandards: PCI DSS, GDPR, HIPAA, NIST 800-53, TSC SOC2.

Wazuh API

hljs bash
TOKEN=$(curl -k -X POST 'https://localhost:55000/security/user/authenticate' \
  -u wazuh-wui:MyS3cr37P450r.*- | jq -r '.data.token')

curl -k -X GET "https://localhost:55000/agents?pretty=true" \
  -H "Authorization: Bearer $TOKEN"

Aktualisierung und Sicherung

hljs bash
# Aktualisierung
cd wazuh-docker/single-node
docker compose down
docker compose pull
docker compose up -d

# Sicherung
docker exec wazuh-manager tar -czf /tmp/wazuh-backup.tar.gz /var/ossec/etc /var/ossec/logs
docker cp wazuh-manager:/tmp/wazuh-backup.tar.gz ./wazuh-backup-$(date +%Y%m%d).tar.gz

Mit Wazuh SIEM auf Ihren REXE-Servern können Sie umfassende Sicherheitsüberwachung, Log-Analyse, Schwachstellenscanning und Compliance-Auditing durchführen. Die agentenbasierte Architektur ermöglicht die Verwaltung aller Server über ein zentrales Dashboard.

Häufig gestellte Fragen

Ich kann nicht auf das Wazuh Dashboard zugreifen.

Überprüfen Sie, ob die Container laufen: 'docker ps'. Warten Sie, bis der Wazuh Indexer bereit ist (kann beim ersten Start einige Minuten dauern). Stellen Sie sicher, dass Port 443 in der Firewall geöffnet ist. Prüfen Sie die Dashboard-Logs: 'docker logs wazuh-dashboard'. Verwenden Sie HTTPS.

Der Agent kann sich nicht mit dem Server verbinden.

Überprüfen Sie, ob der Wazuh Manager läuft. Stellen Sie sicher, dass die Ports 1514 und 1515 in der Firewall geöffnet sind. Überprüfen Sie die WAZUH_MANAGER IP-Adresse in der Agent-Konfiguration. Prüfen Sie die Agent-Logs: '/var/ossec/logs/ossec.log'.

Wazuh verbraucht zu viel RAM.

Wazuh Indexer (OpenSearch) verwendet standardmäßig 1GB Heap. Passen Sie OPENSEARCH_JAVA_OPTS in docker-compose.yml an. Mindestens 4GB RAM wird empfohlen. Bereinigen Sie alte Indizes oder richten Sie eine Aufbewahrungsrichtlinie ein.

Wie überwache ich benutzerdefinierte Log-Dateien?

Fügen Sie einen localfile-Block zur ossec.conf des Agents hinzu. Verwenden Sie syslog, json oder multi-line als log_format. Schreiben Sie benutzerdefinierte Decoder und Regeln. Starten Sie den Agent nach Änderungen neu.

Schwachstellenscan-Ergebnisse werden nicht angezeigt.

Überprüfen Sie, ob das vulnerability-detector Modul in ossec.conf aktiviert ist. Stellen Sie sicher, dass Provider korrekt konfiguriert sind. Der erste Scan kann mehrere Stunden dauern. Prüfen Sie die Manager-Logs.

Wie richte ich Telegram-Benachrichtigungen mit Wazuh ein?

Erstellen Sie ein benutzerdefiniertes Skript im Wazuh-Integrations-Verzeichnis. Fügen Sie einen Integration-Block in ossec.conf mit der Telegram-API-URL und Ihrem Bot-Token hinzu. Legen Sie den Alert-Level-Schwellenwert fest.

Verwandte Artikel

NetzwerkverkehrEingehend GbpsAusgehend Gbps