Graylog ist ein kostenloses Open-Source-Protokollverwaltungstool, mit dem Sie alle Maschinenprotokolle zentral erfassen und analysieren können.
Diese Anleitung konzentriert sich auf die Installation von Graylog (v3.2) auf Debian 10 / Debian 9.
Komponenten
- Elasticsearch – Es speichert die Maschinenprotokolle und bietet die Suchfunktion.
- MongoDB – dient als Datenbank zum Speichern von Konfigurationen und Metainformationen.
- Graylog-Server – sammelt die Protokolle aus verschiedenen Eingaben und bietet eine integrierte Webschnittstelle zum Verwalten der Protokolle.
Voraussetzungen
Installieren Sie die wenigen erforderlichen Pakete für das Graylog-Setup.
sudo apt update sudo apt install -y apt-transport-https uuid-runtime pwgen curl dirmngr wget
Installieren Sie entweder Oracle JDK oder OpenJDK auf Ihrem Computer für Elasticsearch.
sudo apt install -y default-jre
Überprüfen Sie die Java-Version.
java -version
Ausgabe:
openjdk version "11.0.6" 2020-01-14 OpenJDK Runtime Environment (build 11.0.6+10-post-Debian-1deb10u1) OpenJDK 64-Bit Server VM (build 11.0.6+10-post-Debian-1deb10u1, mixed mode, sharing)
Elasticsearch installieren
Elasticsearch ist eine der Hauptkomponenten im Graylog-Setup. Es fungiert als Suchserver, bietet eine verteilte Suche und Analyse in Echtzeit mit der RESTful-Webschnittstelle.
Elasticsearch speichert die vom Graylog-Server gesendeten Protokolle und zeigt die Meldungen immer dann an, wenn der Benutzer sie über die integrierte Weboberfläche anfordert.
Lassen Sie uns den Elasticsearch GPG-Signaturschlüssel hinzufügen.
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
Konfigurieren Sie das Eleasticsearch-Repository, 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 Elasticsearch.
sudo apt update sudo apt install -y elasticsearch-oss
Konfigurationsdatei von Elasticsearch bearbeiten.
sudo nano /etc/elasticsearch/elasticsearch.yml
Legen Sie den Clusternamen als Graylog fest.
cluster.name: graylog action.auto_create_index: false
Starten Sie den Elasticsearch-Dienst neu.
sudo systemctl restart elasticsearch
Stellen Sie Elasticsearch so ein, dass es beim Systemstart automatisch gestartet wird.
sudo systemctl enable elasticsearch
Warten Sie eine Minute, damit Elasticsearch vollständig gestartet werden kann.
Elastisearch sollte jetzt auf Port 9200 lauschen, um HTTP-Anfragen zu bedienen. Verwenden Sie eine CURL, um die Antwort zu überprüfen.
curl -X GET http://localhost:9200
Stellen Sie sicher, dass der Clustername als Graylog angezeigt wird.
{ "name" : "EHpBH-y", "cluster_name" : "graylog", "cluster_uuid" : "cGXE-wgsT56sBKsDC_TYBw", "version" : { "number" : "6.8.7", "build_flavor" : "oss", "build_type" : "deb", "build_hash" : "c63e621", "build_date" : "2020-02-26T14:38:01.193138Z", "build_snapshot" : false, "lucene_version" : "7.7.2", "minimum_wire_compatibility_version" : "5.6.0", "minimum_index_compatibility_version" : "5.0.0" }, "tagline" : "You Know, for Search" }
Überprüfen Sie den Zustand des Elasticsearch-Clusters.
curl -XGET 'http://localhost:9200/_cluster/health?pretty=true'
Stellen Sie sicher, dass der Clusterstatus grün ist .
{ "cluster_name" : "graylog", "status" : "green", "timed_out" : false, "number_of_nodes" : 1, "number_of_data_nodes" : 1, "active_primary_shards" : 0, "active_shards" : 0, "relocating_shards" : 0, "initializing_shards" : 0, "unassigned_shards" : 0, "delayed_unassigned_shards" : 0, "number_of_pending_tasks" : 0, "number_of_in_flight_fetch" : 0, "task_max_waiting_in_queue_millis" : 0, "active_shards_percent_as_number" : 100.0 }
Installieren Sie MongoDB
Graylog 3 funktioniert nur mit MongoDB 4.0. Befolgen Sie daher die Anweisungen unter den folgenden Links, um MongoDB 4.0 zu installieren, je nach Debian-Version.
LESEN: So installieren Sie MongoDB 4.0 unter Debian 10
LESEN: So installieren Sie MongoDB 4.0 unter Debian 9
Graylog installieren
Der Graylog-Server akzeptiert und verarbeitet die Maschinenprotokolle und zeigt sie für Anfragen an, die von der Graylog-Weboberfläche kommen.
Laden Sie das Graylog-Repository-Paket herunter und installieren Sie es.
wget https://packages.graylog2.org/repo/packages/graylog-3.2-repository_latest.deb sudo dpkg -i graylog-3.2-repository_latest.deb
Aktualisieren Sie den Repository-Cache.
sudo apt update
Installieren Sie den Graylog-Server mit dem apt-Befehl.
sudo apt install -y graylog-server
Legen Sie ein Geheimnis fest, um Benutzerkennwörter zu sichern. Verwenden Sie dazu den Befehl pwgen.
pwgen -N 1 -s 96
Ausgabe:
AE9RxeSA6BC6OCYh0zciUV7WMucNfodMhsmjYKOaBpWfQCBTzroa9ld7iOjespZjVwh47BIZFYTkeUD9h04uie2bghqrfShX
Bearbeiten Sie die server.conf-Datei, um mit der Graylog-Konfiguration zu beginnen.
sudo nano /etc/graylog/server/server.conf
Platzieren Sie das Geheimnis wie unten.
password_secret = OH9wXpsNZVBA8R5vJQSnkhTB1qDOjCxAh3aE3LvXddtfDlZlKYEyGS24BJAiIxI0sbSTSPovTTnhLkkrUvhSSxodTlzDi5gP
Legen Sie ein Hash-Passwort (sha256) für den Root-Benutzer von Graylog fest (Root-Benutzer von Graylog ist admin).
Das Passwort des Graylog-Administrators kann nicht über eine Webschnittstelle geändert werden. Sie müssen also die Konfigurationsdatei bearbeiten, um sie festzulegen.Ersetzen Sie Ihr Passwort durch das von Ihnen gewählte. Sie benötigen dieses Passwort, um sich bei der Graylog-Weboberfläche anzumelden.
echo -n yourpassword | sha256sum
Ausgabe:
e3c652f0ba0b4801205814f8b6bc49672c4c74e25b497770bb89b22cdeb4e951
Bearbeiten Sie die server.conf erneut.
sudo nano /etc/graylog/server/server.conf
Geben Sie das Hash-Passwort ein.
root_password_sha2 = e3c652f0ba0b4801205814f8b6bc49672c4c74e25b497770bb89b22cdeb4e951
Graylog-Weboberfläche installieren
Bearbeiten Sie die server.conf-Datei.
sudo nano /etc/graylog/server/server.conf
Ändern Sie die folgenden Einträge, um die Graylog-Webschnittstelle zu aktivieren. Ersetzen Sie 192.168.0.10 durch Ihre System-IP-Adresse.
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 Sie den Graylog-Dienst neu.
sudo systemctl start graylog-server
Aktiviert den automatischen Start des Graylog-Servers beim Systemstart.
sudo systemctl enable graylog-server
Überprüfen Sie die Server-Startprotokolle, um im Falle eines Problems das Graylog zu beheben.
sudo tail -f /var/log/graylog-server/server.log
Nach dem erfolgreichen Start des Graylog-Servers sollten Sie die folgende Meldung in der Protokolldatei erhalten.
2020-03-29T23:27:14.057-05:00 INFO [ServerBootstrap] Graylog server up and running.
Greifen Sie auf die Graylog-Weboberfläche zu
Die Graylog-Weboberfläche ist jetzt auf Port 9000 verfügbar. Richten Sie Ihren Browser also auf.
http://ip.add.re.ss:9000Melden Sie sich mit dem Benutzernamen admin und dem Passwort an, das Sie auf server.conf konfiguriert haben.
Sobald Sie sich angemeldet haben, sollten Sie die Seite „Erste Schritte“ von Graylog sehen.
Klicken Sie auf System>> Übersicht um den Status des Graylog-Servers zu überprüfen.
Schlussfolgerung
Das ist alles. Ich hoffe, Sie haben gelernt, wie man Graylog auf Debian 10 / Debian 9 installiert. Um Protokolle von anderen Computern zu erhalten, müssten Sie Graylog-Eingaben konfigurieren und einen Linux-Computer konfigurieren, um Protokolle an Graylog zu senden.