Uptime Kuma

Überwachung von Servern, Webseiten uvm.

Veröffentlicht am 22. April 2023 -


Inhalt
    Add a header to begin generating the table of contents

    Seit kurzem haben wir nicht nur einen Server für unsere Hostingkunden und eine eigene Nextcloudinstanz, sondern auch einen eigenen Server als Entwicklungsumgebung für unsere Webdesignkunden. Da wir für Sie gerne eine möglichst 100%ige Erreichbarkeit unserer Systeme gewährleisten wollen, ist eine Überwachung der Server und Cloud unerlässlich. Eine einfache und doch umfassende Lösung bietet Uptime Kuma. Die Installation ist für technisch Interessierte relativ problemlos zu bewerkstelligen, gerne stellen wir Ihnen im folgenden eine genaue Schritt-für-Schritt-Anleitung zur Verfügung. Sie trauen sich die Installation nicht zu oder haben Probleme bei der Einrichtung? Kein Problem! Wir helfen Ihnen gerne weiter.

    Was kann Uptime Kuma?

    Uptime Kuma ist ein kostenloses Open-Source-Tool zur Überwachung von Servern, Webseiten und anderen System und ihrer Verfügbarkeit. Es ermöglicht Benutzern, die Systeme rund um die Uhr zu überwachen und sendet Benachrichtigungen, sobald eines der Systeme ausfällt. Außerdem bietet Uptime Kuma Statistiken zu Up- und Downtime und lässt sich darüber hinaus noch spielend einfach einrichten und konfigurieren.

    Die Installation

    Für das vorliegende Installationsbeispiel haben wir einen vServer mit Ubuntu 22.04 LTS (Jammy Jellyfish) eingerichtet. Außerdem haben wir eine Subdomain angelegt - der entsprechende A-Record im DNS zeigt direkt auf die IP unseres vServers. Ob Sie die Einträge korrekt gesetzt haben, können Sie relativ einfach überprüfen: Wählen Sie in Ihrem SSH-Client (bspw. PuTTY) als Hostname die Subdomain. Verbindet sich der Client mit dem Server, sind die DNS-Einträge korrekt gesetzt.

    1. Schritt: Update von Ubuntu 22.04

    Wenn Sie sich mit Rootrechten auf Ihrem Server angemeldet haben, kann die Installation von Uptime Kuma beginnen. Zunächst prüfen Sie den Server auf verfügbare Updates und installieren diese mit

    sudo apt update && sudo apt upgrade.

    2. Schritt: Anlegen eines neuen Benutzers

    Es empfiehlt sich, Uptime Kuma nicht direkt mit Root-Rechten zu installieren, sondern dafür einen neuen Benutzer anzulegen. Dieses geschieht mit

    useradd -m -s /bin/bash uptimekuma

    Unser Benutzer heißt also (wenig einfallsreich) uptimekuma, natürlich können Sie auch einen anderen Benutzernamen wählen. Durch obigen Befehl wird nicht nur der Benutzer erstellt sondern durch den Zusatz -m auch automatisch ein neues Verzeichnis für den Benutzer erstellt, welches unter /home zu finden ist.

    Mit dem Befehl passwd uptimekuma kann im Anschluss ein Passwort für den neuen Benutzer gesetzt werden. Mit usermod -aG sudo uptimekuma fügen wir den neu erstellten Nutzer der Gruppe sudo hinzu. Hierdurch kann dieser User bei Bedarf Rootrechte erhalten.

    3. Schritt: Node.js und NPM installieren

    Zunächst wechseln Sie mit su uptimekuma zu unserem soeben erstellten Nutzer.

    curl -sL https://deb.nodesource.com/setup_lts.x | sudo -E bash -

    Hierdurch wird der Repository-Schlüssel von Node.js hinzugefügt und die Paketliste aktualisiert, um dann mit sudo apt install nodejs die Javascript-Laufzeitumgebung Node.JS zu installieren.

    Mittels node -v; npm -v können Sie die soeben installierte Version von Node.JS und dem dazugehörigen Paketmanager NPM prüfen.

    4. Schritt: Installation von Uptime Kuma

    Nun kommen wir auch schon zur eigentlichen Installation des Servermonitors Uptime Kuma, hierzu installieren Sie auf Ihrem Server zunächst Git mit dem Befehl sudo apt install git.

    Mit dem Befehl git clone https://github.com/louislam/uptime-kuma.git klonen wir die aktuellste Version von Uptime Kuma auf unseren Server.

    Mit cd uptime-kuma rufen Sie dann das Installationsverzeichnis auf und starten das Setup mit npm run setup. Den Rest sollte Ihr Server von selbst erledigen, im Terminal können Sie den Fortschritt der Installation verfolgen. Etwaige WARN deprecated-Meldungen können Sie erst einmal getrost ignorieren.

    5. Schritt: Installation von PM2

    Als nächstes installieren Sie PM2 (was schlicht und ergreifend eine Abkürzung für Process Manager 2 ist). Dieses Tool ist in der Lage, Node.js-Anwendungen zu starten, zu stoppen, neu zu starten, zu überwachen und vieles vieles mehr.

    sudo npm install pm2 -g

    Mit dem Code pm2 start server/server.js --name kuma starten Sie Uptime Kuma nun auf Ihrem Server. Der Code pm2 startup sorgt dafür, dass PM2 bei jedem Reboot Ihres Servers automatisch gestartet wird. Hierzu gibt Ihnen Ihr Terminal einen Befehl zurück, den Sie kopieren und ausführen - damit ist auch dieser Schritt erledigt.

    Im Grunde haben Sie es nun schon geschafft, wechseln Sie in den Browser und geben Sie http://IP-ADRESSE-IHRES-SERVERS:3001 ein. Sie sollten nun die Eingabemaske für die Ersteinrichtung von Uptime Kuma zu Gesicht bekommen. Das können Sie an dieser Stelle natürlich schon machen, besonders schön ist die Lösung mit IP-Adresse, Port und ohne SSL-Zertifikat aber natürlich nicht, daher beachten Sie auch noch die nächsten Schritte.

    Installation von nginx

    Um bequem mit unserer zuvor erstellten (Sub-)Domain auf Uptime Kuma zugreifen zu können, installieren und konfigurieren wir im folgenden noch den Webserver nginx und richten eine Firewall ein.

    Das ist im Grunde sehr einfach, sudo apt install nginx installiert den Webserver, sudo ufw allow "Nginx Full" öffnet die benötigten Ports unserer Firewall und sudo ufw enable aktiviert diese. Nun müssen Sie dem Server natürlich noch sagen, auf welche Domain er hören soll. Dazu erstellen Sie mit

    sudo nano /etc/nginx/sites-available/uptimekuma (oder vim oder ein anderer Editor Ihrer Wahl) eine neue Konfigurationsdatei, der Sie den folgenden Inhalt hinzufügen:

    server {
    listen 80;
    server_name sub.domain.com;
    location / {
    proxy_pass http://localhost:3001;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_set_header Host $host;
    }
    }

    Mit sudo ln -s /etc/nginx/sites-available/uptimekuma /etc/nginx/sites-enabled/ erstellen Sie anschließend einen symlink, der es nginx ermöglicht, die Datei zu lesen und auszuführen. Das Ganze können Sie einmal mit nginx -t prüfen, Ihr Terminal sollte

    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
    nginx: configuration file /etc/nginx/nginx.conf test is successful

    zurückgeben.

    Mit systemctl start nginx starten wir nun den Webserver und sorgen mit systemctl enable nginx dafür, dass er auch bei einem Reboot des Servers automatisch gestartet wird.

    Nun sollte Uptime Kuma bereits im Browser über http://ihre-domain.tld aufrufbar sein.

    Installation eines SSL-Zertifikats

    Für einen sicheren Betrieb von Uptime Kuma empfiehlt es sich, ein SSL-Zertifikat zu installieren. Wir nutzen hier einfach ein kostenloses Let's Encrypt - Zertifikat.

    Mit sudo apt install certbot python3-certbot-nginx installieren Sie Certbot, wodurch das Zertifikat ausgestellt wird und das dazugehörige nginx-Plugin. Mit diesem ist die automatische Verlängerung des Zertifikats möglich, ohne dass Sie dieses (nach spätestens 90 Tagen) händisch aktualisieren müssen.

    sudo certbot --nginx -d ihredomain.tld startet Certbot. Im Verlauf der Einrichtung Ihres SSL-Zertifikats wird Ihre Email-Adresse abgefragt, Sie müssen die Nutzungsbedingungen bestätigen und haben die Möglichkeit, einen Newsletter zu abonnieren. Im weiteren Verlauf wird Ihr Let's Encrypt-Zertifikat ausgestellt. Congratulations!.

    Um zu überprüfen, ob der Timer für die automatische Verlängerung des Zertifikats auch funktioniert, können Sie mit sudo systemctl status certbot.timer den Status überprüfen. Der Timer sollte zweimal täglich die Gültigkeit Ihres Zertifikats prüfen und bei nur noch wenigen Tagen Laufzeit ggf. verlängern.

    Ob die Verlängerung dann auch funktioniert, können Sie mit einem sog. dry run testen: sudo certbot renew --dry-run. Ist auch dieser Test erfolgreich, haben Sie die Installation nicht nur des SSL-Zertifikats, sondern auch Ihrer Uptime Kuma - Instanz geschafft. Sie sollten diese nun über https://ihredomain.tld aufrufen können.

    Herzlichen Glückwunsch - Sie haben es geschafft!

    Schauen Sie sich erst einmal in Ruhe um und begeben sich dann an die Einrichtung Ihrer Systeme, der Statusseite und Email-Benachrichtigungen bei etwaigen Ausfällen von Webseite, Servern etc. - viel Spaß!

    Sie brauchen Hilfe?

    Installation fehlgeschlagen? Sie trauen sich die oben genannten Schritte nicht zu? Sie brauchen weitere Hilfe bei der Einrichtung von Uptime Kuma?

    Sprechen Sie uns an! Wir helfen Ihnen gerne, damit auch Sie mit Uptime Kuma in Zukunft all' Ihre Systeme überwachen können.

    Oder wir Rufen Sie an
    Invalid Number

    Full-Service-IT-Agentur aus Mülheim an der Ruhr
    Planung. Hosting. Design. SEO. Social Media.

    Nach oben scrollen