So richten Sie ein Uptime-Überwachungstool in Linux mit Uptime Kuma ein

Uptime Kuma ist ein einfaches, aber leistungsstarkes Uptime-Überwachungstool. Es ermöglicht Ihnen, jeden Dienst zu verfolgen, den Sie entweder in einem lokalen Netzwerk oder im weiteren Internet hosten.
Dieser Artikel zeigt Ihnen, wie Sie Uptime Kuma in einem lokalen Netzwerk mit Ubuntu und Docker installieren und bereitstellen. Wir zeigen Ihnen auch, wie Sie die Uptime Kuma-Instanz anpassen, um Statusbenachrichtigungen an Telegram zu senden.
Inhaltsverzeichnis
- Warum Uptime Kuma verwenden?
- Uptime Kuma installieren
- Erstellen eines Reverse-Proxy für Uptime Kuma mit Nginx
- Konfigurieren von Uptime Kuma und Hinzufügen von Monitoren
- Einrichten externer Benachrichtigungen für Uptime Kuma
Warum Uptime Kuma verwenden?
Uptime Kuma kann Webserver verfolgen und anpingen sowie die Gesundheit Ihrer Docker-Container überprüfen. Das macht Uptime Kuma zum idealen All-in-One-Webportal für all Ihre Netzwerkdienste.
Einer der größten Vorteile von Uptime Kuma ist, dass es standardmäßig mit einem robusten Benachrichtigungssystem ausgestattet ist. Das bedeutet, dass Sie Ihren Uptime-Monitor so einstellen können, dass er automatisch eine Nachricht über verschiedene Kanäle sendet, wann immer er eine Anomalie feststellt.

Uptime Kuma installieren
Docker und Docker Compose beschaffen
Zuerst holen Sie sich den GPG-Signaturschlüssel für die Docker- und Docker Compose-Repositories:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg |sudo gpg --dearmor-o/etc/apt/keyrings/docker.gpg
sudochmod a+r /etc/apt/keyrings/docker.gpgErstellen Sie eine neue Repository-Datei für Docker unter „/etc/apt/sources.list.d/“
sudonano/etc/apt/sources.list.d/docker.listFügen Sie die folgende Zeile Code in Ihre neue Repository-Datei ein:
deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stableAktualisieren und upgraden Sie das Paketrepository für Ihr Ubuntu-System:
sudo apt update &&sudo apt upgradeInstallieren Sie das Docker- und Docker Compose-Paket zusammen mit ihren Abhängigkeiten:
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx gitStellen Sie sicher, dass Ihr aktuell laufender Benutzer die richtigen Berechtigungen hat, um Docker und Docker Compose auszuführen:
sudo usermod -aGdocker ramcesUptime Kuma beschaffen und erstellen
Erstellen Sie ein neues Verzeichnis für Ihren Uptime Kuma Docker-Container. Dies wird die Rezeptdatei für Ihre Instanz enthalten:
mkdir uptime-kuma &&cd ./uptime-kumaSobald Sie drin sind, erstellen Sie eine neue „docker-compose.yml“ mit Ihrem bevorzugten Texteditor:
nano ./docker-compose.ymlFügen Sie den folgenden Block Code in Ihre neue Compose-Datei ein:
---
version: "3.8"
services:
uptime-kuma:
image: louislam/uptime-kuma:1
container_name: uptime-kuma
volumes:
- uptime-kuma:/app/data
ports:
- 3001:3001
restart: always
volumes:
uptime-kuma: nullBauen Sie die Docker-Container für Ihre neue Uptime Kuma-Instanz:
sudodocker compose up -dErstellen eines Reverse-Proxy für Uptime Kuma mit Nginx
Wir werden einen Reverse-Proxy in Nginx erstellen, damit Sie Uptime Kuma unter einer öffentlich zugänglichen URL aufrufen können.
Erstellen Sie eine neue Nginx-Site-Konfigurationsdatei mit Ihrem bevorzugten Texteditor:
sudonano/etc/nginx/sites-available/uptimekumaSchreiben Sie den folgenden Block Code in Ihre neue Site-Konfigurationsdatei:
server {
server_name uptime.myvpsserver.top;
location /{
proxy_pass http://127.0.0.1:3001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
}
}Verlinken Sie Ihre Site-Konfigurationsdatei vom Nginx-„sites-available“-Ordner in das „sites-enabled“-Verzeichnis:
sudoln-s/etc/nginx/sites-available/uptimekuma /etc/nginx/sites-enabledStarten Sie Ihren Nginx-Server-Daemon neu, um Ihre neuen Einstellungen anzuwenden:
sudo systemctl restart nginxInstallieren des SSL-Zertifikats
Um zu beginnen, müssen Sie sicherstellen, dass Ihr System das Kern-Snap-Paket aktiv hat:
sudo snap install coreInstallieren Sie das Snap für den Certbot der Electronic Frontier Foundation. Dies ist ein kleines Tool, das automatisch das SSL-Zertifikat Ihres Reverse-Proxys anfordern und verwalten kann:
sudo snap install certbot --classicTesten Sie, ob der Certbot ordnungsgemäß funktioniert, indem Sie Ihre neue Certbot-Installation bei der EFF anmelden:
sudo certbot register --agree-tos-m [email protected]Fordern Sie ein neues SSL-Zertifikat für Ihren neuen Reverse-Proxy an:
sudo certbot --nginx-d uptime.myvpsserver.topKonfigurieren von Uptime Kuma und Hinzufügen von Monitoren
Überprüfen Sie, ob Ihre Uptime Kuma-Installation ordnungsgemäß über ihren Reverse-Proxy funktioniert, indem Sie zu ihrer Adresse in einem Webbrowser navigieren.

Füllen Sie das Formular mit den Details aus, die Sie für Ihr neues Administratorkonto wünschen, und klicken Sie dann auf „Erstellen“, um zu Ihrer Instanz fortzufahren.

Klicken Sie auf die Schaltfläche „Neuen Monitor hinzufügen“ in der oberen linken Ecke der Seite.

Dies öffnet ein neues Unterfenster auf der aktuellen Seite, in dem Sie den Typ des Dienstes angeben können, den Sie überwachen möchten. Wenn Sie beispielsweise den Wert „Monitor-Typ“ von „HTTP(S)“ auf „TCP-Port“ ändern, wird ein Monitor erstellt, der überprüft, ob ein bestimmter Port auf der Maschine derzeit geöffnet ist.

Füllen Sie die Details der Maschine aus, die Sie überwachen möchten.
Scrollen Sie zum Ende der Seite und klicken Sie dann auf „Speichern“, um Ihren neuen Monitor zu starten.

Einrichten externer Benachrichtigungen für Uptime Kuma
Gehen Sie zur Hauptseite Ihrer Uptime Kuma-Instanz und klicken Sie auf das Benutzersymbol in der oberen rechten Ecke der Seite.

Klicken Sie auf die Option „Einstellungen“ im Dropdown-Menü der Seite.
Wählen Sie die Kategorie „Benachrichtigungen“ im neuen Unterfenster der Seite aus.

Erstellen eines Telegram-Benachrichtigungsdienstes
Klicken Sie auf die Schaltfläche „Benachrichtigung einrichten“. Standardmäßig öffnet sich ein kleines Fenster, in dem Sie einen Benachrichtigungsbot mit Ihrem Telegram-Konto verknüpfen und erstellen können.
Geben Sie einen Namen für Ihren neuen Benachrichtigungsalarm ein und klicken Sie dann auf den BotFather-Link unter dem Textfeld „Bot-Token“.

Klicken Sie auf die Schaltfläche „Nachricht senden“ auf der Telegram-Seite des BotFather.

Hinweis: Die Schaltfläche „Nachricht senden“ ist ein Telegram-spezifischer Link, der nur funktioniert, wenn Telegram auf Ihrem Computer läuft. Erfahren Sie, wie Sie Telegram auf Ihrem Linux-Computer installieren.
Dies öffnet ein neues Chatfenster, in dem Sie mit dem BotFather Ihren Benachrichtigungsbot erstellen können. Schreiben Sie „/newbot“ in die Eingabeaufforderung und drücken Sie die Eingabetaste.
Geben Sie einen Namen für den Bot an, den Sie mit Ihrer Uptime Kuma-Instanz verknüpfen.
Geben Sie einen geeigneten Benutzernamen für Ihren neuen Benachrichtigungsbot ein. Beachten Sie, dass der BotFather für dies keine Sonderzeichen außer dem Unterstrich (_) akzeptiert.
Klicken Sie auf den Text, den der BotFather hervorgehoben hat, um ihn in Ihre Zwischenablage zu kopieren.

Testen Sie, ob Ihr neuer Bot ordnungsgemäß funktioniert, indem Sie seinen Benutzernamen suchen und ein Gespräch mit ihm beginnen.

Gehen Sie zurück zu Ihrer Uptime Kuma-Instanz und fügen Sie das private Bot-Token in das Textfeld „Bot-Token“ ein.
Klicken Sie auf die Schaltfläche „Auto Get“ unter dem Textfeld „Chat-ID“.

Scrollen Sie zum Ende des Uptime Kuma-Fensters und klicken Sie dann auf „Test“, um zu überprüfen, ob Uptime Kuma mit Ihrem neuen Bot kommunizieren kann.

Klicken Sie auf „Speichern“, um Ihre Änderungen an Uptime Kuma zu übernehmen.
Das Hosten eines einfachen Dienststatus-Daemons über Docker ist nur die Spitze des Eisbergs, wenn es darum geht, containerisierte Webdienste bereitzustellen. Erfahren Sie, wie Sie Ihr eigenes Cloud-Büro mit ownCloud hosten und Ihr eigenes Pastebin mit Stikked betreiben können.
Bildnachweis: Boitulmelo über Unsplash (Hintergrund) Github (Logo). Alle Änderungen und Screenshots von Ramces Red.