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

Ein Foto eines Schreibtisches voller Computer.

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.

Ein Screenshot, der eine funktionierende Uptime Kuma-Instanz zeigt.

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.gpg

Erstellen Sie eine neue Repository-Datei für Docker unter „/etc/apt/sources.list.d/“

sudonano/etc/apt/sources.list.d/docker.list

Fü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 stable

Aktualisieren und upgraden Sie das Paketrepository für Ihr Ubuntu-System:

sudo apt update &&sudo apt upgrade

Installieren 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 git

Stellen Sie sicher, dass Ihr aktuell laufender Benutzer die richtigen Berechtigungen hat, um Docker und Docker Compose auszuführen:

sudo usermod -aGdocker ramces

Uptime 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-kuma

Sobald Sie drin sind, erstellen Sie eine neue „docker-compose.yml“ mit Ihrem bevorzugten Texteditor:

nano ./docker-compose.yml

Fü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: null

Bauen Sie die Docker-Container für Ihre neue Uptime Kuma-Instanz:

sudodocker compose up -d

Erstellen 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/uptimekuma

Schreiben 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-enabled

Starten Sie Ihren Nginx-Server-Daemon neu, um Ihre neuen Einstellungen anzuwenden:

sudo systemctl restart nginx

Installieren des SSL-Zertifikats

Um zu beginnen, müssen Sie sicherstellen, dass Ihr System das Kern-Snap-Paket aktiv hat:

sudo snap install core

Installieren 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 --classic

Testen 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.top

Konfigurieren 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.

Ein Screenshot, der die Standard-Startseite für Uptime Kuma zeigt.

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.

Ein Screenshot, der die Details des Administrators für die neue Instanz zeigt.

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

Ein Screenshot, der die Schaltfläche „Neuen Monitor hinzufügen“ hervorhebt.

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.

Ein Screenshot, der die verschiedenen verfügbaren Monitorarten zeigt.

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.

Ein Screenshot, der die vollständigen Details eines einfachen Port-Überwachungsmonitors zeigt.

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.

Ein Screenshot, der das Abzeichen des Benutzersymbols in der oberen rechten Ecke des Bildschirms hervorhebt.

Klicken Sie auf die Option „Einstellungen“ im Dropdown-Menü der Seite.

Wählen Sie die Kategorie „Benachrichtigungen“ im neuen Unterfenster der Seite aus.

Ein Screenshot, der die Kategorie Benachrichtigungen hervorhebt.

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“.

Ein Screenshot, der den Telegram BotFather-Link hervorhebt.

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

Ein Screenshot, der die erste Eingabeaufforderung für den BotFather zeigt.

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.

Ein Screenshot, der das einzigartige Token für Ihren neuen Benachrichtigungsbot hervorhebt.

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

Ein Screenshot, der den ersten Gesprächsverlauf mit dem neuen Bot zeigt.

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“.

Ein Screenshot, der die Schaltfläche Auto Get hervorhebt.

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.

Ein Screenshot, der einen funktionierenden Uptime Kuma Telegram-Bot zeigt.

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.