Installation · 13 min read · Nov 17, 2025

So installieren Sie Kuma - Selbstgehostete Uptime Robot Alternative auf Ubuntu 20.04

Uptime-Kuma ist ein Open-Source-Überwachungstool wie “Uptime Robot”, das in Nodejs geschrieben ist. Es ist ein selbstgehostetes Überwachungstool mit einem schicken, schönen Dashboard und unterstützt mehrere Benachrichtigungsmethoden. Uptime-Kuma überwacht die Verfügbarkeit von Hosts oder Servern über die Protokolle HTTP(s), TCP und Ping. Wenn Hosts über diese Protokolle in Intervallen nicht erreichbar sind, sendet Uptime-Kuma Benachrichtigungen über Webhooks, Telegram, Discord, Gotify, Slack, Pushover, E-Mail (SMTP) usw.

In diesem Leitfaden lernen Sie, wie Sie Uptime-Kuma auf einem Ubuntu-Server installieren und den Apache-Webserver als Reverse-Proxy mit einem kostenlosen Let’s Encrypt SSL-Zertifikat davor verwenden. Während der Installation lernen Sie auch die Installation von Nodejs über nvm (Node Version Manager) kennen.

Voraussetzungen

  • Ein Ubuntu-Server 20.04.
  • Ein Benutzer mit Root-Rechten. Sie verwenden diesen Benutzer, um neue Pakete zu installieren und Systemeinstellungen zu ändern.

Neuen Benutzer hinzufügen

Zuerst fügen Sie einen neuen Benutzer zum Ubuntu-System hinzu. Aus Sicherheitsgründen wird die Anwendung Uptime-Kuma als Nicht-Root-Benutzer ausgeführt.

  1. Fügen Sie einen neuen Benutzer hinzu, indem Sie den folgenden Befehl ausführen. Für dieses Beispiel verwenden wir den Benutzernamen “ johndoe “. Stellen Sie sicher, dass Sie den Benutzernamen durch Ihren eigenen ersetzen.
useradd -m -s /bin/bash johndoe

Optionen, die Sie kennen müssen:

  • -m = erstellt automatisch das Home-Verzeichnis für den Benutzernamen, das unter dem Verzeichnis ‘/home’ verfügbar sein wird.
  • -s = definiert den Pfad der Shell für den Benutzer, die meisten Linux-Systeme haben die /bin/bash-Shell.
  1. Führen Sie danach den folgenden Befehl aus, um das Passwort für den Benutzer “johndoe” festzulegen.
passwd johndoe

Geben Sie nun ein neues starkes Passwort ein und wiederholen Sie es, und drücken Sie dann “ Enter “, um zu bestätigen.

  1. Fügen Sie als Nächstes den Benutzer “johndoe” mit dem folgenden Befehl zur Gruppe “ sudo “ hinzu.
usermod -aG sudo johndoe

Durch das Hinzufügen von Benutzern zur Gruppe “ sudo “ können diese den Befehl “sudo su” ausführen und Root-Rechte erhalten.

NVM (Node Version Manager) installieren

NVM oder Node Version Manager ist ein Befehlszeilentool zur Installation mehrerer Nodejs-Versionen auf einem System. Dieses Tool ermöglicht es Ihnen, eine bestimmte Nodejs-Version für Ihre Anwendungen zu installieren und macht Ihre Entwicklungs- und Bereitstellungsumgebung flexibel.

In dieser Phase installieren Sie nvm unter dem Nicht-Root-Benutzer “johndoe”.

  1. Melden Sie sich von Ihrer Root-Shell aus bei dem Benutzer “johndoe” mit dem folgenden Befehl an.
su - johndoe
  1. Laden Sie das nvm-Installationsskript wie folgt herunter und führen Sie es aus.
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash

Installieren Sie den Nodejs-Version-Manager oder NVM

  1. Nach dem erfolgreichen Abschluss laden Sie die Bash-Umgebung mit dem folgenden Befehl neu.
source ~/.bashrc
  1. Überprüfen Sie nun die Installation von “ nvm “ mit dem folgenden Befehl.
command -v nvm

Wenn Ihre Installation erfolgreich ist, sehen Sie das Ergebnis “ nvm “. Andernfalls sehen Sie nichts oder ein leeres Ergebnis.

Führen Sie nun den nvm-Befehl wie folgt aus.

nvm --help

Und Sie sehen die manuelle Hilfeseite des nvm-Befehls.

Node Version Manager (v0.38.0)  
  
Hinweis:  bezieht sich auf jede versionähnliche Zeichenfolge, die nvm versteht. Dazu gehören:  
  - vollständige oder teilweise Versionsnummern, die mit einem optionalen "v" beginnen (0.10, v0.1.2, v1)  
  - Standard- (eingebaute) Aliase: node, stable, unstable, iojs, system  
  - benutzerdefinierte Aliase, die Sie mit `nvm alias foo` definieren  
  
 Alle Optionen, die farbige Ausgaben erzeugen, sollten die Option `--no-colors` respektieren.  
  
Verwendung:  
  nvm --help                                  Zeigt diese Nachricht an  
    --no-colors                               Unterdrückt farbige Ausgaben  
  
.....  
  
Hinweis:  
  Um nvm zu entfernen, zu löschen oder zu deinstallieren - entfernen Sie einfach den Ordner `$NVM_DIR` (normalerweise `~/.nvm`)

Nodejs LTS-Version installieren

Um die Uptime-Kuma-Anwendung zu installieren, müssen Sie nodejs >= 14, git und pm2 installieren. An diesem Punkt installieren Sie die neueste LTS-Version von Nodejs mit dem nvm-Befehl.

  1. Führen Sie den nvm-Befehl unten aus, um die neueste LTS-Version von Nodejs zu installieren.
nvm install --lts

Sobald die Installation erfolgreich ist, sehen Sie eine ähnliche Ausgabe wie unten.

Nodejs mit NVM installieren

Die erste Nodejs-Version, die Sie installieren, wird zur Standardversion in Ihrer Entwicklungsumgebung.

  1. Führen Sie nun den folgenden Befehl aus, um die Nodejs-Installation zu überprüfen.
node --version  
npm --version

Wenn Ihre Installation erfolgreich ist, sehen Sie eine ähnliche Ausgabe wie die folgende.

# Nodejs-Version  
v14.17.4  
  
# npm-Version  
6.14.14

Uptime-Kuma herunterladen und installieren

An diesem Punkt sind Sie bereit, die Uptime-Kuma-Anwendung zu installieren.

  1. Klonen Sie den Quellcode von Uptime-Kuma mit dem folgenden git-Befehl.
git clone https://github.com/louislam/uptime-kuma.git
  1. Wechseln Sie danach das Arbeitsverzeichnis zu “ uptime-kuma/ “ und führen Sie den npm-Befehl aus, um alle notwendigen Pakete für Uptime-Kuma zu installieren.
cd uptime-kuma/  
npm run setup

Und Sie sehen eine ähnliche Ausgabe wie unten.

Pakete für Uptime-Kuma installieren

Uptime-Kuma mit pm2 einrichten

Was ist pm2? Es ist ein Nodejs-Prozessmanager, der Ihnen hilft, Ihre Nodejs-Anwendung für immer am Laufen zu halten. pm2 hat einige integrierte Funktionen, die die Bereitstellung von Nodejs-Anwendungen erleichtern, es ermöglicht Ihnen, den Anwendungsstatus, Protokolle zu überwachen und sogar die Dienstdatei für Ihre Anwendung einzurichten.

  1. Installieren Sie das pm2-Paket mit dem folgenden npm-Befehl.
npm install pm2
  1. Sobald die Installation abgeschlossen ist, führen Sie den folgenden pm2-Befehl aus, um die Uptime-Kuma-Anwendung zu starten.
pm2 start npm --name uptime-kuma -- run start-server -- --port=3001 --hostname=127.0.0.1

Und Sie sehen die Ausgabemeldungen wie unten.

Uptime-Kuma mit pm2-Prozessmanager starten

Wie im Bild zu sehen, läuft der Anwendungsname “ uptime-kuma “ mit dem Status “ online “.

  1. Um den Status Ihrer Anwendung in pm2 zu überprüfen, führen Sie die folgenden Befehle aus.

Überprüfen Sie den Status der Nodejs-Anwendung.

pm2 status

Überprüfen Sie die Protokolle der Nodejs-Anwendung.

pm2 logs

Anwendungsprotokolle pm2 überprüfen

Echtzeitüberwachung der Nodejs-Anwendung.

pm2 monit

Echtzeit-Anwendungsüberwachung pm2

  1. Führen Sie als Nächstes den folgenden pm2-Befehl aus, um die Dienstdatei für die Uptime-Kuma-Anwendung zu generieren.
pm2 startup

Danach sollten Sie den Befehl wie im Output angegeben ausführen.

sudo env PATH=$PATH:/home/johndoe/.nvm/versions/node/v14.17.4/bin /home/johndoe/.nvm/versions/node/v14.17.4/lib/node_modules/pm2/bin/pm2 startup systemd -u johndoe --hp /home/johndoe

Stellen Sie sicher, dass Sie den Befehl “ sudo “ verwenden und das richtige Passwort für Ihren Benutzer eingeben, um Root-Rechte zu erhalten.

Sobald der Befehl abgeschlossen ist, sehen Sie die folgende Ausgabe.

pm2 generiert die systemd-Dienstdatei für Uptime-Kuma

Wie im Screenshot zu sehen, generiert pm2 einen systemd-Dienst basierend auf dem Benutzer, in diesem Beispiel “ pm2-johndoe.service “.

Führen Sie nun den folgenden Befehl aus, um den Zustand der Uptime-Kuma-Anwendung zu generieren und zu speichern. Dieser Befehl ist wichtig, um sicherzustellen, dass die Uptime-Kuma-Anwendung immer im Hintergrund läuft, selbst nach dem Systemstart.

pm2 save
  1. Um den Dienst ‘ pm2-johndoe’ zu überprüfen, führen Sie den folgenden Befehl aus.
sudo systemctl is-enabled pm2-johndoe

Sie sehen die Ausgabe enabled, was bedeutet, dass die Uptime-Kuma-Anwendung nach dem Systemstart automatisch ausgeführt wird.

Zusätzlich können Sie versuchen, Ihr System neu zu starten und sich erneut beim Server anzumelden, und dann den Status des Uptime-Kuma-Dienstes überprüfen.

sudo systemctl status pm2-johndoe

Sie sollten eine ähnliche Ausgabe wie unten sehen.

? pm2-johndoe.service - PM2-Prozessmanager  
     Loaded: loaded (/etc/systemd/system/pm2-johndoe.service; enabled; vendor preset: enabled)  
     Active: active (running) since Tue 2021-08-10 01:52:37 UTC; 3min 57s ago  
       Docs: https://pm2.keymetrics.io/  
   Main PID: 745 (PM2 v5.1.0: God)  
      Tasks: 34 (limit: 2343)  
     Memory: 120.4M  
     CGroup: /system.slice/pm2-johndoe.service  
             ??745 PM2 v5.1.0: God Daemon (/home/johndoe/.pm2)  
             ??772 npm  
             ??873 sh -c node server/server.js "--port=3001" "--hostname=127.0.0.1"  
             ??874 node server/server.js --port=3001 --hostname=127.0.0.1  
  
Aug 10 01:52:36 ubuntu64 pm2[633]: [PM2] Spawning PM2 daemon with pm2_home=/home/johndoe/.pm2  
Aug 10 01:52:37 ubuntu64 pm2[633]: [PM2] PM2 erfolgreich daemonisiert  
Aug 10 01:52:37 ubuntu64 pm2[633]: [PM2] Wiederherstellung  
Aug 10 01:52:37 ubuntu64 pm2[633]: [PM2] Wiederherstellung von Prozessen, die sich in /home/johndoe/.pm2/dump.pm2 befinden  
Aug 10 01:52:37 ubuntu64 pm2[633]: [PM2] Prozess /home/johndoe/.nvm/versions/node/v14.17.4/bin/npm wiederhergestellt

Der “ pm2-johndoe.service “ ist beim Systemstart aktiv.

Apache als Reverse-Proxy einrichten

Für diesen Leitfaden installieren und konfigurieren Sie den Apache-Webserver als Reverse-Proxy für die Uptime-Kuma-Anwendung.

  1. Führen Sie den folgenden Befehl aus, um die Apache-Webserver-Pakete zu installieren.
sudo apt install apache2

Geben Sie “y” ein und drücken Sie “ Enter “, um den Apache-Webserver zu installieren.

  1. Aktivieren Sie danach einige Apache-Module mit dem folgenden Befehl.
sudo a2enmod ssl proxy proxy_ajp proxy_wstunnel proxy_http rewrite deflate headers proxy_balancer proxy_connect proxy_html
  1. Erstellen Sie als Nächstes eine neue virtuelle Host-Konfiguration ‘ uptime-kuma.conf ‘ mit dem Nano-Editor-Befehl unten.
sudo nano /etc/apache2/sites-available/uptime-kuma.conf

Fügen Sie die folgende Konfiguration in Ihre Terminal-Shell ein und ändern Sie den Domainnamen “ uptime.example.net “ in Ihre Domain wie “ domain.com “.

  
  ServerName uptime.example.net  
  
  ProxyPass / http://localhost:3001/  
  RewriteEngine on  
  RewriteCond %{HTTP:Upgrade} websocket [NC]  
  RewriteCond %{HTTP:Connection} upgrade [NC]  
  RewriteRule ^/?(.*) "ws://localhost:3001/$1" [P,L]  

Drücken Sie “ Ctrl+x “ und geben Sie “ Y “ ein, um die Konfiguration zu speichern.

  1. Aktivieren Sie nun die Apache-Virtual-Host-Konfiguration “uptime-kuma” mit dem folgenden Befehl.
sudo a2ensite uptime-kuma

Führen Sie danach den folgenden Befehl aus, um die Apache-Konfiguration zu überprüfen und sicherzustellen, dass Sie keine Fehler haben.

sudo apachectl configtest
  1. Wenden Sie nun die neue Konfiguration an, indem Sie den Apache-Dienst mit dem folgenden Befehl neu starten.
sudo systemctl restart apache2

Apache als Reverse-Proxy für Uptime-Kuma einrichten

Uptime-Kuma mit SSL Letsencrypt sichern

Um den Zugriff auf Uptime-Kuma zu sichern, richten Sie das SSL von Letsencrypt für den Apache-Webserver ein.

  1. Installieren Sie zunächst das Certbot-Tool, indem Sie den folgenden Befehl ausführen.
sudo apt install python3-certbot-apache

Geben Sie “ y “ ein und drücken Sie “ Enter “, um mit der Installation zu beginnen.

  1. Generieren Sie nach der Installation das SSL Let’s Encrypt mit dem Certbot-Befehl wie folgt.
sudo certbot --apache yourdomain.com

Geben Sie Ihre E-Mail-Adresse ein, um sich bei Letsencrypt zu registrieren, und drücken Sie “ Enter “, um fortzufahren. Letsencrypt sendet Ihnen E-Mails, wenn Ihre SSL-Zertifikate ablaufen.

Speichern Sie das Debug-Protokoll unter /var/log/letsencrypt/letsencrypt.log
Ausgewählte Plugins: Authenticator apache, Installer apache
Geben Sie die E-Mail-Adresse ein (verwendet für dringende Erneuerungen und Sicherheitsbenachrichtigungen) (Geben Sie ‘c’ ein, um
abzubrechen): [email protected]


Für die TOS (Nutzungsbedingungen) von Letsencrypt geben Sie " A " ein, um zuzustimmen, und drücken Sie " Enter ", um fortzufahren.
                                                                                • (A)kzeptieren/(C)ancel: A
                                                                                  
                                                                                  Für das Teilen der E-Mail mit der EFF (Electronic Frontier Foundation) können Sie " Y " für Ja und " N " für Nein eingeben. In diesem Beispiel werden wir keine E-Mail-Adresse mit der EFF teilen.
                                                                                  
                                                                                  Wären Sie bereit, Ihre E-Mail-Adresse mit der Electronic Frontier
                                                                                  Foundation, einem Gründungspartner des Let’s Encrypt-Projekts und der gemeinnützigen
                                                                                  Organisation, die Certbot entwickelt, zu teilen? Wir würden Ihnen gerne E-Mails über unsere Arbeit
                                                                                  zum Verschlüsseln des Webs, EFF-Nachrichten, Kampagnen und Möglichkeiten zur Unterstützung der digitalen Freiheit senden.
                                                                                • (Y)es/(N)o: N
                                                                                  
                                                                                  Jetzt wird das Certbot-Tool SSL Letsencrypt für den Uptime-Kuma-Domainnamen generieren. Außerdem werden einige zusätzliche Konfigurationen für die Apache-Virtual-Host-Konfiguration hinzugefügt.
                                                                                  
                                                                                  Sie werden aufgefordert, die automatische Weiterleitung von HTTP zu HTTPS einzurichten. Geben Sie die Nummer "2" ein, um die Apache-Auto-Weiterleitung von HTTP zu HTTPS einzurichten, und drücken Sie " Enter ".
                                                                                  
                                                                                  Bitte wählen Sie, ob Sie den HTTP-Verkehr zu HTTPS umleiten möchten, um den HTTP-Zugriff zu entfernen.  
                                                                                  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -  
                                                                                  1: Keine Umleitung - Keine weiteren Änderungen an der Webserver-Konfiguration vornehmen.  
                                                                                  2: Umleitung - Alle Anfragen umleiten auf sicheren HTTPS-Zugriff. Wählen Sie dies für  
                                                                                  neue Sites oder wenn Sie sicher sind, dass Ihre Site 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 drücken Sie [enter] (drücken Sie 'c', um abzubrechen): 2

Sobald der Bereitstellungsprozess erfolgreich ist, sehen Sie eine ähnliche Ausgabe wie unten.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -  
Herzlichen Glückwunsch! Sie haben erfolgreich https://uptime.example.net aktiviert  
  
Sie sollten Ihre Konfiguration unter testen:  
https://www.ssllabs.com/ssltest/analyze.html?d=uptime.example.net  
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -  
WICHTIGE HINWEISE:  
 - Herzlichen Glückwunsch! Ihr Zertifikat und die Kette wurden gespeichert unter:  
   /etc/letsencrypt/live/uptime.example.net/fullchain.pem  
   Ihre Schlüsseldatei wurde gespeichert unter:  
   /etc/letsencrypt/live/uptime.example.net/privkey.pem  
   Ihr Zertifikat läuft am 2021-10-10 ab. Um eine neue oder angepasste  
Version dieses Zertifikats in Zukunft zu erhalten, führen Sie einfach erneut certbot aus  
 mit der Option "certonly". Um *alle* Ihre Zertifikate nicht-interaktiv zu erneuern, führen Sie "certbot renew" aus  
 - Ihre Kontodaten 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, sodass regelmäßige Backups  
 dieses Ordners ideal sind.  
 - Wenn Sie Certbot mögen, ziehen Sie bitte in Betracht, unsere Arbeit zu unterstützen, indem Sie:  
  
   Spenden an ISRG / Let's Encrypt:   https://letsencrypt.org/donate  
   Spenden an EFF:                    https://eff.org/donate-le  
  
 - Wir konnten Sie nicht für die EFF-Mailingliste anmelden, da Ihre  
   E-Mail-Adresse ungültig zu sein scheint. Sie können es später erneut versuchen, indem Sie  
 https://act.eff.org besuchen.

Uptime-Kuma-Installation überprüfen

  1. Öffnen Sie Ihren Webbrowser und geben Sie die Uptime-Kuma-URL-Installation in die Adresszeile ein.

https://uptime.example.net/

Sie werden auf die HTTPS-sichere Verbindung umgeleitet.

  1. Erstellen Sie einen neuen Admin-Benutzer für Uptime-Kuma auf der ersten Seite. Geben Sie Ihren Admin-Benutzernamen und Ihr Passwort ein und klicken Sie auf die Schaltfläche “ Erstellen “.

Admin-Benutzer für uptime-kuma erstellen

  1. Melden Sie sich danach mit Ihrem neuen Benutzernamen und Passwort an und klicken Sie auf die Schaltfläche “ Anmelden “.

Uptime-Kuma-Anmeldeseite

Jetzt sehen Sie das Uptime-Kuma-Dashboard.

  1. Um einen neuen Host zur Überwachung hinzuzufügen, klicken Sie auf die Schaltfläche “ Neuen Monitor hinzufügen “.

Uptime-Kuma-Dashboard Monitor hinzufügen

  1. In diesem Beispiel überwachen Sie die Website, wählen Sie also den “ Überwachungstyp “ als “ HTTP(s) “, geben Sie die URL-Adresse der Website ein, klicken Sie auf die Schaltfläche “ Benachrichtigung einrichten “ für die Unterstützung von Benachrichtigungen, und klicken Sie dann auf die Schaltfläche “ Speichern “ am Ende der Seite.

Host zur Überwachung hinzufügen uptime-kuma

  1. Sie werden auf das Uptime-Kuma-Dashboard umgeleitet und sehen Ihren Host auf der Dashboard-Seite.

Uptime-Kuma-Dashboard

Unten ist ein weiteres Beispiel, nachdem der neue Typ “ TCP/IP “ mit geschlossenen Ports hinzugefügt wurde, und das Ergebnis ist “ ENCONNREFUSED “ oder Verbindungsfehler, da der Port verweigert/geschlossen wurde.

Uptime-Kuma-Dashboard-Überwachung

Fazit

Herzlichen Glückwunsch! Sie haben Uptime-Kuma erfolgreich mit dem Apache-Webserver als Reverse-Proxy installiert und die Bereitstellung von Uptime-Kuma mit SSL Letsencrypt gesichert. In der nächsten Phase können Sie Ihre Hosts hinzufügen und die Benachrichtigung für Vorfälle, bei denen etwas ausfällt, aktivieren.

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.