Graylog

Journalbeat installieren

sudo apt install journalbeat

Journalbeat konfigurieren (vi /etc/journalbeat/journalbeat.yml)

logging.level: info
logging.to_files: true
logging.files:
        path: /var/log/journalbeat
        name: journalbeat
        keepfiles: 7
        permissions: 0644
journalbeat.inputs:
- paths: []
  seek: head
output.logstash:
  # Boolean flag to enable or disable the output module.
  enabled: true
  ssl.enabled: false  
  # Graylog host and the beats input
  hosts: ["127.0.0.1:5044"]

Beat input in Graylog konfigurieren

Journalbeat starten

systemctl start journalbeat
systemctl enable journalbeat
systemctl status journalbeat

Schritt 1: Inputs einrichten (Logquellen definieren)

Zunächst musst du einen Input einrichten, der die Logs verarbeitet. Für Demo-Zwecke könntest du z.B. Syslog verwenden, um Logs von deinem eigenen Server oder einem anderen Gerät zu sammeln.

  1. Gehe in der Graylog-Oberfläche auf System → Inputs.
  2. Wähle unter Select input den Syslog UDP-Input (oder einen anderen Input) aus und klicke auf Launch new input.
  3. Gib deinem Input einen Namen (z.B. „Syslog UDP“) und wähle den Node (normalerweise deinen lokalen Graylog-Server).
  4. Stelle sicher, dass der Port korrekt ist (normalerweise 514 für Syslog).
  5. Klicke auf Save.

Jetzt ist dein Graylog-System bereit, Logs über den konfigurierten Input zu empfangen.

Schritt 2: Testdaten generieren

Um Testdaten zu simulieren, kannst du einige Syslog-Nachrichten direkt auf deinem Server erzeugen, wo Graylog läuft, oder Daten von anderen Servern an den Syslog-Input senden.

Beispiel: Syslog-Daten lokal senden

Auf deinem Linux-Server kannst du Syslog-Nachrichten über logger generieren. Öffne ein Terminal und sende einige Nachrichten:

logger -n 127.0.0.1 -P 514 "Test log message from local system"

Dies sendet eine Test-Syslog-Nachricht an deinen Graylog-Server, der auf localhost (127.0.0.1) auf Port 514 lauscht.

Beispiel: Weitere Testdaten erzeugen

Du kannst ein Skript verwenden, um kontinuierlich Log-Nachrichten zu senden und zu testen, wie Graylog mit größeren Datenmengen umgeht. Hier ein Beispiel für ein Bash-Skript:

#!/bin/bash
for i in {1..100}
do
  logger -n 127.0.0.1 -P 514 "Test log message number $i"
  sleep 1
done

Das Skript sendet 100 Nachrichten mit einer Sekunde Verzögerung. Dies hilft dir, zu sehen, wie Graylog die Logs in Echtzeit verarbeitet.

Schritt 3: Logs in Graylog durchsuchen

Nachdem du einige Logs erzeugt hast, kannst du sie in Graylog durchsuchen:

  1. Gehe in der Graylog-Oberfläche auf Search.
  2. Wähle den gewünschten Zeitraum (z.B. „Last 5 minutes“) und klicke auf Search.
  3. Du solltest die gesendeten Logs in der Liste sehen. Du kannst die Logs durch Filter und Suchabfragen weiter eingrenzen.

Schritt 4: Dashboards erstellen

Um die Logs besser zu visualisieren, kannst du ein Dashboard in Graylog erstellen.

  1. Gehe auf Dashboards → Create new dashboard.
  2. Gib dem Dashboard einen Namen und klicke auf Create.
  3. Füge Widgets hinzu, um verschiedene Aspekte deiner Logs zu visualisieren (z.B. Log-Level, Häufigkeit bestimmter Ereignisse usw.).

Mit diesen Schritten hast du eine grundlegende Testumgebung mit Demo-Daten in Graylog eingerichtet. Du kannst jetzt die Logs analysieren, Dashboards erstellen und die Funktionen der Plattform erkunden.

Schritt 1: System aktualisieren

Zuerst sollten wir sicherstellen, dass das System auf dem neuesten Stand ist.

sudo apt update && sudo apt upgrade -y

Schritt 2: Installiere Java (OpenJDK 11)

Graylog erfordert Java, das du mit folgendem Befehl installieren kannst:

sudo apt install openjdk-11-jre-headless -y

Stelle sicher, dass Java korrekt installiert wurde:

java -version

Schritt 3: Installiere MongoDB

Graylog benötigt MongoDB als Datenbank.

  1. MongoDB-Repository hinzufügen:
wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list
sudo apt update
  1. MongoDB installieren:
sudo apt install -y mongodb-org
  1. MongoDB starten und beim Boot aktivieren:
sudo systemctl start mongod
sudo systemctl enable mongod

Schritt 4: Installiere Elasticsearch

Graylog verwendet Elasticsearch zur Indizierung und Speicherung von Log-Daten.

  1. Elasticsearch-Repository hinzufügen:
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-7.x.list
sudo apt update
  1. Elasticsearch installieren:
sudo apt install elasticsearch -y
  1. Elasticsearch konfigurieren: Öffne die Konfigurationsdatei und aktiviere die Netzwerkschnittstelle, falls du Elasticsearch nicht nur lokal verwenden möchtest:
sudo vi /etc/elasticsearch/elasticsearch.yml

Entferne die Kommentare vor network.host und cluster.name, und passe sie an:

cluster.name: graylog
network.host: 127.0.0.1
  1. Elasticsearch starten und beim Boot aktivieren:
sudo systemctl start elasticsearch
sudo systemctl enable elasticsearch

Schritt 5: Installiere Graylog

Jetzt kannst du Graylog installieren.

  1. Graylog-Repository hinzufügen:
wget https://packages.graylog2.org/repo/packages/graylog-4.3-repository_latest.deb
sudo dpkg -i graylog-4.3-repository_latest.deb
sudo apt update
  1. Graylog installieren:
sudo apt install graylog-server -y

Schritt 6: Graylog konfigurieren

  1. Öffne die Konfigurationsdatei von Graylog:
sudo vi /etc/graylog/server/server.conf
  1. Setze das password_secret (generiere ein sicheres Passwort):
pwgen -N 1 -s 96




Füge den generierten Wert in die Datei server.conf unter password_secret ein.

  1. Setze das root_password_sha2 (Admin-Passwort für das Graylog-Interface):
echo -n 'deinPasswort' | sha256sum

Füge den generierten SHA256-Hash in die Datei unter root_password_sha2 ein.

  1. Stelle sicher, dass http_bind_address auf 0.0.0.0:9000 gesetzt ist, damit du auf die Web-Oberfläche zugreifen kannst:
http_bind_address = 0.0.0.0:9000

Schritt 7: Graylog starten

Jetzt kannst du Graylog starten und den Dienst aktivieren:

sudo systemctl start graylog-server
sudo systemctl enable graylog-server

Schritt 8: Zugriff auf die Graylog-Weboberfläche

Öffne deinen Webbrowser und navigiere zu:

http://<Deine-IP-Adresse>:9000

Melde dich mit dem Benutzernamen admin und dem Passwort an, das du zuvor unter root_password_sha2 gesetzt hast.