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 SystemInputs.
  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 DashboardsCreate 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.