Wie man

Installieren Sie Graylog Server auf Ubuntu 20.04 mit Let's Encrypt SSL

Installieren Sie Graylog Server auf Ubuntu 20.04 mit Let's Encrypt SSL

Graylog ist ein Open-Source-Tool zur Aggregation und Verwaltung von Protokollen, das zum Speichern, Analysieren und Senden von Warnungen aus den gesammelten Protokollen verwendet werden kann. Graylog kann verwendet werden, um mit ElasticSearch und MongoDB sowohl strukturierte als auch unstrukturierte Logs zu analysieren analyze. Dies umfasst eine Vielzahl von Systemen, darunter Windows-Systeme, Linux-Systeme, verschiedene Anwendungen und Mikrodienste usw.

Graylog erleichtert die einfache Analyse und Überwachung dieser Systeme und Anwendungen von einem einzigen Host aus.

Graylog hat die folgenden Komponenten:

Lassen Sie uns schnell in die Installation des Graylog-Servers auf einem Ubuntu 20 . einsteigen.04 Gastgeber. Wir werden dann SSL mit Let'sEncrypt konfigurieren.

Um dies zu erreichen, müssen wir Nginx installieren, um als Reverse-Proxy auf unserem System zu dienen.

Ähnliche Artikel: So leiten Sie Logs mit Promtail an Grafana Loki weiter

Voraussetzungen für die Einrichtung

Stellen Sie vor der Installation auf Ihrer Box sicher, dass Ihr Host die folgenden Mindestanforderungen erfüllt:

Wenn die oben genannten Bedingungen erfüllt sind, beginnen wir mit dem Installationsprozess.

Schritt 1 - Installieren Sie Java auf Ubuntu 20.04

Java-Version 8 und höher ist für die Graylog-Installation erforderlich.
In diesem Beitrag verwenden wir das offene JDK 11

sudo apt update sudo apt install -y apt-transport-https openjdk-11-jre-headless uuid-runtime pwgen curl dirmngr

Sie können die gerade installierte Java-Version mit dem Java-Version Befehl:

$ java -version openjdk-Version "11.0.9" 2020-10-20 OpenJDK-Laufzeitumgebung (Build 11.0.9+11-Ubuntu-0ubuntu1.20.04) OpenJDK 64-Bit-Server-VM (Build 11.0.9+11-Ubuntu-0ubuntu1.20.04, gemischter Modus, teilen)

Schritt 2 - Installieren Sie Elasticsearch auf Ubuntu 20.04

Elastic Search ist das Tool zum Speichern und Analysieren eingehender Protokolle aus externen Quellen. Es verwendet die webbasierte RESTful API.

Elasticsearch GPG-Signaturschlüssel herunterladen und installieren.

wget -qO - https://artefakte.elastisch.co/GPG-KEY-elasticsearch | sudo apt-key hinzufügen -

Fügen Sie das Elasticsearch-Repository zu Ihrer Quellenliste hinzu:

echo "deb https://artefakte.elastisch.co/pakete/oss-6.x/apt stable main" | sudo tee /etc/apt/sources.aufführen.d/elastisch-6.x.aufführen

Elasticsearch installieren:

sudo apt update sudo apt install -y elasticsearch-oss

Clusternamen für Graylog konfigurieren.

sudo vim /etc/elasticsearch/elasticsearch.yml

Bearbeiten Sie den Clusternamen zu graulog

Cluster.Name: Graylog

Fügen Sie die folgenden Informationen in derselben Datei hinzu

Aktion.auto_create_index: false

Laden Sie den Daemon neu, um den Elasticsearch-Dienst zu starten.

sudo systemctl daemon-reload sudo systemctl Elasticsearch starten sudo systemctl Elasticsearch aktivieren

Sie können den Status des Dienstes überprüfen, indem Sie:

$ systemctl status elasticsearch ● elasticsearch.service - Elasticsearch Geladen: geladen (/lib/systemd/system/elasticsearch.Bedienung; aktiviert; Herstellervoreinstellung: aktiviert) Aktiv: aktiv (läuft) seit So 08.11.2020 12:36:10 UTC; vor 14s Docs: http://www.elastisch.co Main PID: 1352139 (Java) Aufgaben: 15 (Limit: 4582) Speicher: 1.1G CGroup: /system.Slice/Elastiksuche.service └─1352139 /bin/java -Xms1g -Xmx1g -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -Des.> 08. Nov 12:36:10 Graylog.Computerforgeeks.com systemd[1]: Elasticsearch gestartet.

Elasticsearch läuft auf Port 9200 und dies kann überprüft werden durch Locken Befehl:

curl -X GET http://localhost:9200

Sie sollten Ihren Clusternamen in der Ausgabe sehen.

$ curl -X GET http://localhost:9200  "name": "RQ7y68X", "cluster_name" : "graylog", "cluster_uuid" : "Dp948OGjT-uFz_LuOiW6ng", "version" :  "number" : "6.8.13", "build_flavor" : "oss", "build_type" : "deb", "build_hash" : "be13c69", "build_date" : "2020-10-16T09:09:46.555371Z", "build_snapshot" : false, "lucene_version" : "7.7.3", "minimum_wire_compatibility_version" : "5.6.0", "minimum_index_compatibility_version" : "5.0.0" , "Tagline" : "Sie wissen, für die Suche" 

Schritt 3 - MongoDB auf Ubuntu 20 installieren.04

Laden Sie mongoDB aus dem Basis-Repository von Ubuntu herunter und installieren Sie es.

sudo apt update sudo apt install -y mongodb-server

MongoDB starten

sudo systemctl starte mongodb sudo systemctl aktiviere mongodb
$ systemctl status mongodb ● mongodb.service - Eine objekt-/dokumentorientierte Datenbank Geladen: geladen (/lib/systemd/system/mongodb.Bedienung; aktiviert; Herstellervoreinstellung: aktiviert) Aktiv: aktiv (läuft) seit So 08.11.2020 12:45:21 UTC; vor 1s Docs: man:mongod(1) Haupt-PID: 1352931 (mongod) Aufgaben: 3 (Limit: 4582) Speicher: 27.9M CGroup: /system.Scheibe/Mongodb.service └─1352931 /usr/bin/mongod --unixSocketPrefix=/run/mongodb --config /etc/mongodb.conf Nov 08 12:45:21 Graylog.Computerforgeeks.com systemd[1]: Gestartet Eine objekt-/dokumentenorientierte Datenbank. 

Schritt 4 - Installieren Sie Graylog Server auf Ubuntu 20.04

Graylog-Repository herunterladen und konfigurieren.

wget https://Pakete.graulog2.org/repo/packages/graylog-3.3-repository_latest.deb sudo apt installieren ./graylog-3.3-repository_latest.deb

Graylog-Server installieren:

sudo apt update sudo apt install -y greylog-server

Generieren Sie ein Geheimnis zum Sichern von Benutzerpasswörtern mit pwgen Befehl

pwgen -N 1 -s 96

Die Ausgabe sollte wie folgt aussehen:

FFP3LhcsuSTMgfRvOx0JPcpDomJtrxovlSrbfMBG19owc13T8PZbYnH0nxyIfrTb0ANwCfH98uC8LPKFb6ZEAi55CvuZ2Aum

Bearbeiten Sie die Graylog-Konfigurationsdatei, um das soeben erstellte Geheimnis hinzuzufügen:

sudo vim /etc/graylog/server/server.conf

Suchen Sie die password_secret = Zeile und fügen Sie das oben erstellte Geheimnis dahinter hinzu.

password_secret= FFP3LhcsuSTMgfRvOx0JPcpDomJtrxovlSrbfMBG19owc13T8PZbYnH0nxyIfrTb0ANwCfH98uC8LPKFb6ZEAi55CvuZ2Aum

Fügen Sie auch die folgenden Zeilen zu den /etc/graylog/server/server.conf Datei

rest_listen_uri = http://127.0.0.1:9000/api/ web_listen_uri = http://127.0.0.1:9000/

Der nächste Schritt besteht darin, ein Hash-sha256-Passwort für den Administrator zu erstellen. Dies ist das Passwort, das Sie benötigen, um sich bei der Weboberfläche anzumelden.

echo -n Str0ngPassw0rd | sha256sum

Ersetzen 'Str0ngPassw0rd' mit einem Passwort Ihrer Wahl.

Sie erhalten eine Ausgabe dieser Art:

e3c652f0ba0b4801205814f8b6bc49672c4c74e25b497770bb89b22cdeb4e951

Bearbeiten Sie die /etc/graylog/server/server.conf Datei dann platzieren Sie das Hash-Passwort bei root_password_sha2 =

sudo vi /etc/graylog/server/server.conf
root_password_sha2 = e3c652f0ba0b4801205814f8b6bc49672c4c74e25b497770bb89b22cdeb4e951

Graylog ist nun konfiguriert und einsatzbereit.

Graylog-Dienst starten:

sudo systemctl daemon-reload sudo systemctl Graylog-Server starten sudo systemctl Graylog-Server aktivieren

Sie können anhand der Protokolle überprüfen, ob der Dienst erfolgreich gestartet wurde:

sudo tail -f /var/log/graylog-server/server.Log

Ausgabe:

2020-11-08T13:37:55.067Z INFO [ServerBootstrap] Graylog-Server läuft und läuft.

Schritt 5 - SSL mit Let's Encrypt einrichten

Der nächste Schritt besteht darin, SSL so zu konfigurieren, dass wir über HTTPS auf die Graylog-Weboberfläche zugreifen können.

Um dies zu erreichen, benötigen wir Folgendes:

Verwenden Sie die folgenden Schritte, um ngiinx zu installieren und zu konfigurieren.

  1. Aktualisieren Sie das System und installieren Sie nginx
sudo apt-get update sudo apt install nginx

2. Firewall konfigurieren

sudo ufw erlauben 'Nginx Full'

3. Erstellen Sie einen virtuellen Host mit Ihrem Domainnamen

Erstellen Sie eine Datei in /etc/nginx/sites-verfügbar/ e.G

sudo vim /etc/nginx/sites-available/graylog.Deine Domain.com.conf

Fügen Sie der Datei Folgendes hinzu:

Server  hören 80; Servername Graylog.Deine Domain.com; 301 https://$host$request_uri zurückgeben; access_log /var/log/nginx/graylog.Deine Domain.com.Zugriff.log kombiniert; error_log /var/log/nginx/graylog.Deine Domain.com.Error.Log;  

Denken Sie daran, zu ersetzen graulog.Deine Domain.com mit Ihrem FQDN.

4. Erstellen Sie einen Symlink der Datei, die wir gerade erstellt haben /etc/nginx/sites-verfügbar zu /etc/nginx/sites-enabled

sudo ln -s /etc/nginx/sites-available/graylog.Deine Domain.com.conf /etc/nginx/sites-enabled/

5. Überprüfen Sie, ob die nginx-Konfiguration in Ordnung ist, indem Sie sie ausführen nginx -t Befehl.

$ sudo nginx -t nginx: die Konfigurationsdatei /etc/nginx/nginx.conf-Syntax ist in Ordnung nginx: Konfigurationsdatei /etc/nginx/nginx.conf-Test ist erfolgreich

6. Installieren Sie Let'sEncrypt mit certbot.

sudo apt install certbot python3-certbot-nginx

7. Führen Sie certbot für nginx aus

$ sudo certbot --nginx Debug-Protokoll in /var/log/letsencrypt/letsencrypt speichern.log Ausgewählte Plugins: Authenticator nginx, Installer nginx E-Mail-Adresse eingeben (wird für dringende Verlängerungs- und Sicherheitshinweise verwendet) (zum Abbrechen 'c' eingeben): [email protected] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Bitte lesen Sie die Nutzungsbedingungen unter https://letsencrypt.org/dokumente/LE-SA-v1.2-November-15-2017.pdf. Sie müssen zustimmen, um sich beim ACME-Server unter https://acme-v02 . zu registrieren.api.letsencrypt.org/Verzeichnis - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (A)grün/(C )ancel: A - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Wären Sie bereit zu teilen Ihre E-Mail-Adresse bei der Electronic Frontier Foundation, einem Gründungspartner des Let's Encrypt-Projekts und der gemeinnützigen Organisation, die Certbot . entwickelt? Wir möchten Ihnen eine E-Mail über unsere Arbeit zur Verschlüsselung des Internets, EFF-Nachrichten, Kampagnen und Möglichkeiten zur Unterstützung der digitalen Freiheit senden. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: N Für welche Namen möchten Sie HTTPS aktivieren? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: graulog.Computerforgeeks.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Wählen Sie die entsprechenden Zahlen durch Kommas getrennt und/ oder Leerzeichen, oder lassen Sie die Eingabe leer, um alle angezeigten Optionen auszuwählen (Geben Sie 'c' ein, um abzubrechen): 1 Beziehen eines neuen Zertifikats Durchführen der folgenden Challenges: http-01 Challenge for Graylog.Computerforgeeks.com Warten auf Verifizierung… Bereinigung von Herausforderungen Bereitstellen des Zertifikats auf VirtualHost /etc/nginx/sites-enabled/graylog.Computerforgeeks.com.conf Bitte wählen Sie, ob HTTP-Datenverkehr auf HTTPS umgeleitet und HTTP-Zugriff entfernt werden soll. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: Keine Weiterleitung - Nehmen Sie keine weiteren Änderungen an der Webserver-Konfiguration vor. 2: Umleitung – Alle Anfragen an einen sicheren HTTPS-Zugriff umleiten. Wählen Sie diese Option für neue Websites oder wenn Sie sicher sind, dass Ihre Website auf HTTPS funktioniert. Sie können diese Änderung rückgängig machen, indem Sie die Konfiguration Ihres Webservers bearbeiten. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Wählen Sie die entsprechende Nummer [1-2] und dann [enter] (drücken Sie 'c' zum Abbrechen): 2 Umleiten des gesamten Datenverkehrs auf Port 80 an SSL in /etc/nginx/sites-enabled/graylog.Computerforgeeks.com.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Herzlichen Glückwunsch! Sie haben https://graylog . erfolgreich aktiviert.Computerforgeeks.com Sie sollten Ihre Konfiguration testen unter: https://www.ssllabs.com/ssltest/analyze.html?d=graulog.Computerforgeeks.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - WICHTIGE HINWEISE: - Herzlichen Glückwunsch! Ihr Zertifikat und Ihre Kette wurden gespeichert unter: /etc/letsencrypt/live/graylog.Computerforgeeks.com/fullchain.pem Ihre Schlüsseldatei wurde gespeichert unter: /etc/letsencrypt/live/graylog.Computerforgeeks.com/privkey.pem Ihr Zertifikat läuft am 2021-02-06 ab. Um in Zukunft eine neue oder optimierte Version dieses Zertifikats zu erhalten, führen Sie certbot einfach erneut mit der Option "certonly" aus. Um *alle* Ihrer Zertifikate nicht interaktiv zu erneuern, führen Sie "certbot renew" aus - Ihre Zugangsdaten wurden in Ihrem Certbot-Konfigurationsverzeichnis unter /etc/letsencrypt gespeichert. Sie sollten jetzt ein sicheres Backup dieses Ordners erstellen. Dieses Konfigurationsverzeichnis enthält auch Zertifikate und private Schlüssel, die von Certbot erhalten wurden, daher ist es ideal, regelmäßige Backups dieses Ordners zu erstellen. - Wenn Ihnen Certbot gefällt, denken Sie bitte daran, unsere Arbeit zu unterstützen, indem Sie an ISRG / Let's Encrypt spenden: https://letsencrypt.org/spenden Spenden an EFF: https://eff.org/donate-le 

Sie haben erfolgreich SSL für unsere Domain erhalten.

Der nächste Schritt besteht darin, einen Reverse-Proxy auf Nginx zu konfigurieren, der verwendet wird, um Graylog zu bedienen, das auf demselben Host auf Port 9000 ausgeführt wird.

Bearbeiten Sie die /etc/nginx/sites-available/graylog.Deine Domain.com.conf Datei und fügen Sie die folgende Konfiguration unter dem Ort Sektion.

location /  proxy_set_header Host $http_host; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Graylog-Server-URL https://$server_name/; proxy_pass http://127.0.0.1:9000;  

Die endgültige Konfigurationsdatei sollte wie folgt aussehen:

Server  hören 80; Servername Graylog.Computerforgeeks.com; 301 https://$host$request_uri zurückgeben; access_log /var/log/nginx/graylog.Computerforgeeks.com.Zugriff.log kombiniert; error_log /var/log/nginx/graylog.Computerforgeeks.com.Error.Log;  server  root /var/www/html; Indexindex.HTML-Index.htm-index.nginx-debian.html; Servername Graylog.Computerforgeeks.com; hören [::]:443 ssl ipv6only=on; # verwaltet von Certbot listen 443 ssl; # verwaltet von Certbot ssl_certificate /etc/letsencrypt/live/graylog.Computerforgeeks.com/fullchain.pem; # verwaltet von Certbot ssl_certificate_key /etc/letsencrypt/live/graylog.Computerforgeeks.com/privkey.pem; # verwaltet von Certbot include /etc/letsencrypt/options-ssl-nginx.conf; # verwaltet von Certbot ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # verwaltet vom Certbot-Standort /  proxy_set_header Host $http_host; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Graylog-Server-URL https://$server_name/; proxy_pass http://127.0.0.1:9000;   

Überprüfen Sie Ihre nginx-Konfiguration mit dem nginx -t nur um sicherzustellen, dass Ihre nginx-Konfiguration in Ordnung ist.

Starten Sie nun den nginx-Dienst neu.

sudo systemctl Neustart nginx

Wenn die oben genannten Schritte ausgeführt wurden, sollten Sie in der Lage sein, auf Ihr Graylog-Dashboard zuzugreifen, indem Sie Folgendes eingeben: https://graylog.Deine Domain.com.

Denken Sie daran, zu ersetzen graulog.Deine Domain.com mit Ihrem FQDN.

Der Standardbenutzername für Graylog ist admin und das Passwort, das wir oben in Schritt 4 (Graylog-Server installieren) konfiguriert haben. Für meinen Fall wäre dies „Str0ngPassw0rd“

Sie können jetzt Ihr mit SSL konfiguriertes Graylog-Web-Dashboard verwenden.

Fazit

Wir haben den Graylog-Server erfolgreich installiert, SSL über Nginx als Reverse-Proxy konfiguriert und es geschafft, uns am Webinterface anzumelden.

Die Konfiguration von SSL auf dem Graylog-Server ist für die Sicherung Ihres Systems wichtig.

Sollten Sie während des Einrichtungsvorgangs auf eine Herausforderung stoßen, können Sie dies gerne im Kommentarbereich kommentieren oder Fragen stellen.

Graylog Nginx Reverse-Proxy mit Letsencrypt SSL konfigurieren

So aktivieren Sie Abmelde- und Anmeldetöne in Windows 10
Die früheren Versionen von Windows 10 ermöglichten es Benutzern, fast alle Funktionen des Betriebssystems frei anzupassen, aber mit der Veröffentlichu...
So aktivieren Sie den Ton für die Feststelltaste in Windows 10
Es kommt oft vor, dass die Feststelltaste während des Tippens unbeabsichtigt eingeschaltet wird und Sie plötzlich feststellen, dass alles fett gedruck...
So verwenden Sie Pfad kopieren in Windows 10, um die Liste aller Dateien in einem Ordner zu kopieren Copy
Das Kopieren, Verschieben oder Exportieren von Dateien von einem Ort an einen anderen ist für viele von uns eine alltägliche Aufgabe. Wenn die Dateien...