Graylog ist ein Open-Source-Protokollverwaltungstool, mit dem Sie alle Maschinenprotokolle zentral speichern und analysieren können. Das Graylog-Setup besteht aus den drei Komponenten Graylog-Server, Elasticsearch und MongoDB.
Hier sehen wir, wie man Graylog auf Ubuntu 20.04 installiert.
Installieren Sie Java
Die Einrichtung von Graylog erfordert Java Version 8 oder höher. Sie können entweder OpenJDK oder Oracle JDK auf Ihrem Computer verwenden, um fortzufahren.
LESEN: So installieren Sie Oracle Java unter Ubuntu 20.04
Hier verwende ich OpenJDK 11.
sudo apt update sudo apt install -y apt-transport-https openjdk-11-jre-headless uuid-runtime pwgen curl dirmngr
Überprüfen Sie die Java-Version nach der Installation von OpenJDK.
java -version
Ausgabe:
openjdk version "11.0.8" 2020-07-14 OpenJDK Runtime Environment (build 11.0.8+10-post-Ubuntu-0ubuntu120.04) OpenJDK 64-Bit Server VM (build 11.0.8+10-post-Ubuntu-0ubuntu120.04, mixed mode, sharing)
Elasticsearch installieren
Elasticsearch speichert Protokolle aus externen Quellen und bietet verteilte Suche und Analysen in Echtzeit mit der RESTful-Webschnittstelle.
Laden Sie den GPG-Signaturschlüssel herunter und installieren Sie ihn.
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
Richten Sie das Elasticsearch-Repository auf Ihrem System ein, indem Sie den folgenden Befehl ausführen.
echo "deb https://artifacts.elastic.co/packages/oss-6.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-6.x.list
Aktualisieren Sie den Repository-Cache und installieren Sie dann das Elasticsearch-Paket.
sudo apt update sudo apt install -y elasticsearch-oss
Bearbeiten Sie die Elasticsearch-Konfigurationsdatei, um den Clusternamen für die Graylog-Einrichtung festzulegen.
sudo nano /etc/elasticsearch/elasticsearch.yml
Legen Sie den Clusternamen als Graylog fest, wie unten gezeigt.
cluster.name: graylog
Entkommentieren Sie dann die folgende Zeile.
action.auto_create_index: false
Starten Sie den Elasticsearch-Dienst, um die neuen Konfigurationen zu lesen.
sudo systemctl daemon-reload sudo systemctl start elasticsearch sudo systemctl enable elasticsearch
Warten Sie mindestens eine Minute, damit Elasticsearch vollständig gestartet werden kann.
Elastisearch sollte jetzt auf Port 9200 lauschen. Verwenden Sie den curl-Befehl, um die Antwort von Elasticsearch zu überprüfen.
curl -X GET http://localhost:9200
Ausgabe:
Stellen Sie sicher, dass die Ausgabe den Clusternamen Graylog hat.
{ "name" : "vQklpl4", "cluster_name" : "graylog", "cluster_uuid" : "jLztxJoOROK-XuZkoKJr6A", "version" : { "number" : "6.8.11", "build_flavor" : "oss", "build_type" : "deb", "build_hash" : "00bf386", "build_date" : "2020-07-09T19:08:08.940669Z", "build_snapshot" : false, "lucene_version" : "7.7.3", "minimum_wire_compatibility_version" : "5.6.0", "minimum_index_compatibility_version" : "5.0.0" }, "tagline" : "You Know, for Search" }
Installieren Sie MongoDB
MongoDB fungiert als Datenbank zum Speichern der Konfiguration von Graylog. Graylog erfordert MongoDB v3.6, 4.0 oder 4.2.
Leider verfügt das offizielle MongoDB-Repository nicht über die erforderlichen MongoDB-Versionen für Ubuntu 20.04. Also werden wir MongoDB v3.6 aus dem Ubuntu-Basis-Repository installieren.
sudo apt update sudo apt install -y mongodb-server
Starten Sie die MongoDB und aktivieren Sie sie beim Systemstart.
sudo systemctl start mongodb sudo systemctl enable mongodb
Graylog-Server installieren
Graylog Server liest Daten von Elasticsearch für Suchanfragen, die von Benutzern stammen, und zeigt sie ihnen dann über die Graylog-Weboberfläche an.
Laden Sie das Graylog 3.3-Repository-Konfigurationspaket herunter und installieren Sie es.
wget https://packages.graylog2.org/repo/packages/graylog-3.3-repository_latest.deb sudo dpkg -i graylog-3.3-repository_latest.deb
Aktualisieren Sie den Repository-Cache.
sudo apt update
Installieren Sie den Graylog-Server mit dem folgenden Befehl.
sudo apt install -y graylog-server
Sie müssen ein Geheimnis festlegen, um die Benutzerkennwörter zu sichern. Verwenden Sie den Befehl pwgen, um das Geheimnis zu generieren.
pwgen -N 1 -s 96
Ausgabe:
HRy1WNsMQIWF228SsbdQCnCsTBL7wVez28UsZXI8PXqStx5DQe3PAmtpm8PNm6g8K44fVFNo4c7Bvp4WCOyxGiSXvdhOXl8w
Bearbeiten Sie die server.conf-Datei.
sudo nano /etc/graylog/server/server.conf
Platzieren Sie dann das Geheimnis wie unten.
password_secret = HRy1WNsMQIWF228SsbdQCnCsTBL7wVez28UsZXI8PXqStx5DQe3PAmtpm8PNm6g8K44fVFNo4c7Bvp4WCOyxGiSXvdhOXl8w
Generieren Sie nun ein Hash-Passwort (sha256) für den Root-Benutzer (nicht zu verwechseln mit dem Systembenutzer, der Root-Benutzer von Graylog ist admin).
Sie benötigen dieses Passwort, um sich bei der Graylog-Weboberfläche anzumelden. Das Passwort des Administrators kann nicht über die Webschnittstelle geändert werden. Sie müssen diese Variable also bearbeiten, um sie zu setzen.
Ersetzen Sie das Passwort durch das von Ihnen gewählte Passwort.
echo -n password | sha256sum
Ausgabe:
5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8
Bearbeiten Sie die server.conf-Datei erneut.
sudo nano /etc/graylog/server/server.conf
Geben Sie dann das Hash-Passwort ein, wie unten gezeigt.
root_password_sha2 = 5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8
Graylog-Weboberfläche einrichten
Ab Version Graylog 2.x wird das Webinterface direkt vom Graylog-Server bedient. Aktivieren Sie die Graylog-Webschnittstelle, indem Sie die Datei server.conf bearbeiten.
sudo nano /etc/graylog/server/server.conf
Aktualisieren Sie den folgenden Eintrag mit Ihrer System-IP-Adresse, über die Sie auf die Graylog-Webschnittstelle zugreifen.
http_bind_address = 192.168.0.10:9000Wenn Sie aufgrund von NATing mit einer öffentlichen IP-Adresse auf das Graylog zugreifen, aktualisieren Sie die folgenden Werte. Andernfalls überspringen Sie es.
http_external_uri = http://public_ip:9000/
Starten und aktivieren Sie den Graylog-Dienst.
sudo systemctl daemon-reload sudo systemctl start graylog-server sudo systemctl enable graylog-server
Sehen Sie sich weiterhin die Startprotokolle des Graylog-Servers an. Dieses Protokoll wird Ihnen bei der Fehlerbehebung bei Graylog nützlich sein, falls Probleme auftreten.
sudo tail -f /var/log/graylog-server/server.log
Bei erfolgreichem Start des Graylog-Servers sollten Sie die folgende Meldung in der Protokolldatei erhalten.
2020-08-03T16:03:06.326-04:00 INFO [ServerBootstrap] Graylog server up and running.
Graylog aufrufen
Die Graylog-Weboberfläche lauscht nun auf Port 9000. Öffnen Sie Ihren Browser und zeigen Sie auf.
http://ip.add.re.ss:9000Melden Sie sich mit dem Benutzernamen admin und dem Passwort an, das Sie unter root_password_sha2 in der Datei server.conf konfiguriert haben.
Sobald Sie sich angemeldet haben, sehen Sie die Seite „Erste Schritte“.
Klicken Sie auf System>> Übersicht um den Status des Graylog-Servers zu erfahren.
Graylog-Eingabe erstellen
Im nächsten Artikel werden wir sehen, wie Graylog konfiguriert wird, um Rsyslog-Protokolle von externen Quellen zu erhalten.
Schlussfolgerung
Sie haben Graylog 3.0 erfolgreich auf Ubuntu 20.04 installiert. Als weitere Lektüre können Sie versuchen, Nginx oder Apache als Reverse-Proxy zu konfigurieren und HTTPS für die Graylog-Weboberfläche einzurichten.