Graylog MQTT Projekt: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 30: Zeile 30:
 
== Graylog für die Erfassung von Mosquitto-Logs konfigurieren ==
 
== Graylog für die Erfassung von Mosquitto-Logs konfigurieren ==
  
=== 1. Graylog-Eingang einrichten ===
+
=== Graylog-Eingang einrichten ===
 
* Öffne die Graylog-Weboberfläche unter `http://<DEINE_IP>:9000`.
 
* Öffne die Graylog-Weboberfläche unter `http://<DEINE_IP>:9000`.
 
* Melde dich mit deinem Admin-Benutzer an.
 
* Melde dich mit deinem Admin-Benutzer an.
Zeile 40: Zeile 40:
 
   * Klicke auf ''Speichern'', um den Input zu aktivieren.
 
   * Klicke auf ''Speichern'', um den Input zu aktivieren.
  
=== 2. Mosquitto-Logs an Graylog senden ===
+
=== Mosquitto-Logs an Graylog senden ===
 
* Öffne die Mosquitto-Konfigurationsdatei, z.B. `/etc/mosquitto/conf.d/graylog.conf`.
 
* Öffne die Mosquitto-Konfigurationsdatei, z.B. `/etc/mosquitto/conf.d/graylog.conf`.
 
* Füge folgende Zeilen hinzu, um die Logs an Graylog weiterzuleiten:
 
* Füge folgende Zeilen hinzu, um die Logs an Graylog weiterzuleiten:
Zeile 57: Zeile 57:
 
</pre>
 
</pre>
  
=== 3. Logs in Graylog visualisieren ===
+
=== Logs in Graylog visualisieren ===
 
* Kehre zur Graylog-Oberfläche zurück und gehe zu ''Search''.
 
* Kehre zur Graylog-Oberfläche zurück und gehe zu ''Search''.
 
* Verwende Filter wie ''source:mosquitto'' oder ''message:'' für eine detaillierte Analyse und Visualisierung der MQTT-Logs.
 
* Verwende Filter wie ''source:mosquitto'' oder ''message:'' für eine detaillierte Analyse und Visualisierung der MQTT-Logs.
  
=== 4. Alarme für verdächtige Aktivitäten einrichten ===
+
=== Alarme für verdächtige Aktivitäten einrichten ===
 
* Gehe zu ''Alerts > Event Definitions'' und erstelle eine neue Event-Definition.
 
* Gehe zu ''Alerts > Event Definitions'' und erstelle eine neue Event-Definition.
 
* Definiere Regeln für Alarme, z.B. eine hohe Anzahl von Verbindungen oder fehlgeschlagene Authentifizierungen.
 
* Definiere Regeln für Alarme, z.B. eine hohe Anzahl von Verbindungen oder fehlgeschlagene Authentifizierungen.
 
* Lege Benachrichtigungen fest, um bei verdächtigen Ereignissen gewarnt zu werden.
 
* Lege Benachrichtigungen fest, um bei verdächtigen Ereignissen gewarnt zu werden.

Version vom 30. Oktober 2024, 12:03 Uhr

Schulungsprojekt: SIEM, IoT und Industrie 4.0 mit Graylog und Mosquitto

Für ein Schulungsprojekt zu SIEM, IoT und Industrie 4.0 ist Graylog in Kombination mit einem MQTT-Broker wie Mosquitto ideal, da praktische Erfahrungen in der Überwachung und Analyse von IoT-Datenströmen gesammelt werden können. Hier ist ein strukturierter Ansatz, um die Integration sinnvoll aufzubauen und Themen für die Schulung abzudecken:

Schulungsziele und Szenarien

  • Überwachung von IoT-Events: Zeigen, wie man Verbindungs- und Authentifizierungsereignisse des MQTT-Brokers überwacht. Diese Logs geben Einblick in die Verbindungssicherheit und das Verhalten der Clients.
  • Erkennung von Anomalien: Demonstriere die Identifikation ungewöhnlicher Aktivitäten, wie z.B. hohe Nachrichtenfrequenz, unerwartete Verbindungsversuche oder missbräuchliches Publishing. Hierbei wird gezeigt, wie wichtig die Anomalieerkennung für Industrie 4.0-Systeme ist.
  • Reaktions- und Alarmierungsmechanismen: Erstelle in Graylog Regeln und Alarme für verdächtige Aktivitäten, um die Bedeutung proaktiver Sicherheitsüberwachung zu verdeutlichen.
  • Datenspeicherung und Analyse: Nutze die Elasticsearch-Integration von Graylog zur Analyse und Darstellung von Daten über Zeitreihen. Das ist besonders relevant, um IoT-Daten langfristig auszuwerten und Trends zu erkennen.

Empfohlene Schritte für das Projekt

Mosquitto einrichten und konfigurieren

  • Grundkonfiguration für Mosquitto zur Authentifizierung und zum Loggen der Ereignisse festlegen.

Graylog installieren und anpassen

  • Graylog auf dem Server installieren, zusammen mit Elasticsearch und MongoDB, und die Anbindung für MQTT-Logs vorbereiten.

Logdaten senden und visualisieren

  • Die Logs von Mosquitto an Graylog weiterleiten, um Verbindungen, Abmeldungen, und Fehler detailliert zu erfassen.
  • Eine Beispielvisualisierung erstellen, um typische IoT-Events darzustellen.

Alarmierung und Anomalieerkennung in Graylog einrichten

  • Alarme für verdächtige oder fehlerhafte Aktivitäten einrichten (z. B. hohe Verbindungsfrequenz).
  • Regeln erstellen, die automatisch eine Benachrichtigung auslösen, wenn bestimmte Schwellenwerte überschritten werden.

Graylog für die Erfassung von Mosquitto-Logs konfigurieren

Graylog-Eingang einrichten

  • Öffne die Graylog-Weboberfläche unter `http://<DEINE_IP>:9000`.
  • Melde dich mit deinem Admin-Benutzer an.
  • Gehe zu System > Inputs und wähle Input hinzufügen.
  • Wähle als Typ Syslog UDP und klicke auf Launch new input.
  • Konfiguriere den Input:
 * Bind address: 0.0.0.0
 * Port: 514 (oder ein anderer freier Port)
 * Klicke auf Speichern, um den Input zu aktivieren.

Mosquitto-Logs an Graylog senden

  • Öffne die Mosquitto-Konfigurationsdatei, z.B. `/etc/mosquitto/conf.d/graylog.conf`.
  • Füge folgende Zeilen hinzu, um die Logs an Graylog weiterzuleiten:
log_dest syslog
  • Stelle sicher, dass dein System so konfiguriert ist, dass es Syslog-Nachrichten an den Graylog-Server weiterleitet. Füge dazu in der Datei `/etc/rsyslog.conf` (oder `/etc/rsyslog.d/50-default.conf`) folgende Zeile hinzu:
*.* @<GRAYLOG_IP>:514;RSYSLOG_SyslogProtocol23Format
  • Starte den Rsyslog-Dienst neu:
sudo systemctl restart rsyslog

Logs in Graylog visualisieren

  • Kehre zur Graylog-Oberfläche zurück und gehe zu Search.
  • Verwende Filter wie source:mosquitto oder message: für eine detaillierte Analyse und Visualisierung der MQTT-Logs.

Alarme für verdächtige Aktivitäten einrichten

  • Gehe zu Alerts > Event Definitions und erstelle eine neue Event-Definition.
  • Definiere Regeln für Alarme, z.B. eine hohe Anzahl von Verbindungen oder fehlgeschlagene Authentifizierungen.
  • Lege Benachrichtigungen fest, um bei verdächtigen Ereignissen gewarnt zu werden.