Wie installiere ich Umami Privacy Analytics auf Ubuntu 24.04
Umami ist eine kostenlose und quelloffene Webanalyseplattform, die in Nodejs geschrieben wurde. Sie ist einfach zu benutzen und zu installieren und bietet eine benutzerfreundliche Oberfläche. Sie basiert auf dem Datenschutz und ist eine Alternative zu Diensten wie Google Analytics. Mit Nodejs kannst du deine Webanalyse auf deinem Server mit deiner eigenen Datenbank betreiben, z. B. mit PostgreSQL oder MySQL.
In dieser Anleitung erfährst du, wie du Umami Privacy-focused Analytics auf dem Ubuntu 24.04 Server installierst.
Voraussetzungen
Um diesen Leitfaden zu lesen, musst du Folgendes haben
- Einen Ubuntu 24.04 Server.
- Einen Nicht-Root-Benutzer mit Administrator-Rechten.
- Einen Domainnamen, der auf eine Server-IP-Adresse zeigt.
Installieren der Abhängigkeiten
Umami ist eine auf Datenschutz ausgerichtete Webanalyse, die in JavaScript und Node.js geschrieben wurde. Es unterstützt MySQL/MariaDB und PostgreSQL als Datenbank. In diesem Abschnitt installierst du die Abhängigkeiten für Umami, einschließlich Node.js, NPM, PostgreSQL, Apache Webserver und Git.
Führe zunächst den folgenden Befehl aus, um deine Ubuntu-Paketliste zu aktualisieren.
sudo apt update
Führe nun den folgenden Befehl aus, um Abhängigkeiten wie Node.js, NPM, Python, Git und PostgreSQL zu installieren. Gib Y
ein, um die Installation zu bestätigen.
sudo apt install nodejs npm git apache2 postgresql
Nachdem die Installation abgeschlossen ist, überprüfe den Apache-Dienst mit folgendem Befehl.
sudo systemctl is-enabled apache2
sudo systemctl status apache2
Im Folgenden siehst du, dass Apache läuft und aktiviert ist.
Überprüfe nun den PostgreSQL-Server mit dem folgenden Befehl.
sudo systemctl is-enabled postgresql
sudo systemctl status postgresql
Du wirst den PostgreSQL-Dienst enabled
und active(exited)
sehen.
Überprüfe schließlich die Node.js- und NPM-Version mit dem folgenden Befehl:
nodejs –version
npm –version
Du kannst sehen, dass Node.js 18.19 und NPM 9.2 installiert sind.
Einrichten der PostgreSQL-Datenbank und des Benutzers
Nachdem du die Abhängigkeiten installiert hast, erstellst du eine neue PostgreSQL-Datenbank und einen neuen Benutzer für Umami. Du verwendest die psql
PostgreSQL-Shell, um eine neue Datenbank und einen neuen Benutzer zu erstellen.
Melde dich mit dem folgenden Befehl am PostgreSQL-Server an:
sudo -u postgres psql
Führe nun die folgenden Abfragen aus, um einen neuen Benutzer umami
und die Datenbank umamidb
zu erstellen. Achte darauf, dass du das folgende Passwort mit deinen Daten änderst.
CREATE ROLE umami LOGIN ENCRYPTED PASSWORD ‚password‘;
CREATE DATABASE umamidb OWNER=umami;
Als nächstes überprüfst du die Liste der verfügbaren Datenbanken und Benutzer mit den folgenden Abfragen. Du wirst sehen, dass der Benutzer umami
mit der Datenbank umamidb
auf deinem PostgreSQL-Server verfügbar ist.
\du
\l
Zum Schluss gibst du q
ein, um den PostgreSQL-Server zu verlassen.
Installation von umami
In diesem Abschnitt installierst du den yarn
Paketmanager, lädst den Umami-Quellcode herunter und installierst die JavaScript-Abhängigkeiten mit yarn
. Anschließend erstellst und startest du Umami von der Kommandozeile aus.
Führe den folgenden Befehl aus, um den yarn
Paketmanager zu installieren.
npm install -g yarn
Erstelle einen neuen Systembenutzer und die Gruppe umami
mit dem folgenden Befehl.
sudo adduser –system –group –no-create-home –shell /sbin/nologin umami
Führe nun den folgenden Befehl git
aus, um den Umami-Quellcode in das Verzeichnis /var/www/umami
herunterzuladen und dort hineinzugehen.
git clone https://github.com/umami-software/umami.git /var/www/umami
cd /var/www/umami
Als Nächstes führst du den Befehl yarn
aus, um die JavaScript-Abhängigkeiten für Umami zu installieren.
yarn install
Unten siehst du die Installation der JavaScript-Abhängigkeiten für Umami.
Erstelle nun eine neue .env
Datei mit dem folgenden nano
Editor.
nano .env
Füge das Folgende hinzu, um PostgreSQL als Umami-Datenbank einzurichten.
DATABASE_URL=postgresql://umami:StrongPasswordUmami@localhost:5432/umamidb
Speichere und beende die Datei, wenn du fertig bist.
Als Nächstes führst du den folgenden Befehl aus, um Umami zu bauen.
yarn build
Starte Umami anschließend mit folgendem Befehl – dadurch wird Umami auf Port 3000 gestartet:
yarn start
Öffne deinen Webbrowser und besuche http://SERVER-IP:3000/. Wenn deine Installation erfolgreich war, siehst du den Umami-Login wie folgt:
Gehe zurück zum Terminalserver und drücke Ctrl+c
, um den Prozess zu beenden.
Zum Schluss führst du den folgenden Befehl aus, um den Eigentümer des Verzeichnisses /var/www/umami
auf den Benutzer umami
zu ändern.
sudo chown -R umami:umami /var/www/umami
Umami als systemd-Dienst ausführen
In dieser Anleitung wirst du Umami als systemd Dienst im Hintergrund laufen lassen. Deshalb erstellst du jetzt eine neue Servicedatei für Umami.
Erstelle eine neue systemd-Dienstdatei /etc/systemd/system/umami.service
mit dem folgenden nano
Editor-Befehl.
sudo nano /etc/systemd/system/umami.service
Füge die unten stehende Konfiguration in die Datei ein.
[Unit]
Description=Umami Website Analytics
After=network.target postgresql.service
[Service]
Type=simple
ExecStart=/usr/bin/npm start
Restart=always
# Consider creating a dedicated user for umami here:
User=umami
Group=umami
#Environment=NODE_ENV=production
WorkingDirectory=/var/www/umami
[Install]
WantedBy=multi-user.target
Wenn du fertig bist, speichere die Datei und beende sie.
Führe nun den folgenden Befehl aus, um den systemd Manager neu zu laden und den neuen Dienst umami.service
anzuwenden.
sudo systemctl daemon-reload
Zum Schluss führst du den folgenden Befehl aus, um den umami.service
Status zu starten, zu aktivieren und zu überprüfen.
sudo systemctl enable –now umami
sudo systemctl status umami
Wie du unten sehen kannst, ist umami.service
aktiviert und läuft. Und standardmäßig läuft er auf Port 3000
.
Apache als Reverse Proxy einrichten
Jetzt, wo Umami im Hintergrund läuft, kannst du Apache als Reverse Proxy für Umami einrichten.
Führe zunächst den folgenden Befehl aus, um die Apache-Module zu aktivieren, die als Reverse Proxy verwendet werden sollen.
sudo a2enmod proxy proxy_http ssl rewrite headers
Erstelle nun eine neue Apache Virtual Host Datei /etc/apache2/sites-available/umami.conf
mit dem nano
Editor.
sudo nano /etc/apache2/sites-available/umami.conf
Füge die unten stehende Konfiguration hinzu und achte darauf, dass du die Option ServerName
durch deinen Domainnamen ersetzt.
<VirtualHost *:80>
ServerName analytics.hwdomain.io
Options -Indexes
ProxyRequests on
ProxyPass / http://localhost:3000/
ProxyPassReverse / http://localhost:3000/
</VirtualHost>
Speichere und beende die Datei, wenn du fertig bist.
Als Nächstes führst du den unten stehenden Befehl aus, um die virtuelle Hostdatei umami.conf
zu aktivieren und deine Apache-Syntax zu überprüfen. Wenn du die richtige Syntax hast, siehst du eine Ausgabe Syntax is OK
.
sudo a2ensite umami.conf
sudo apachectl configtest
Starte abschließend den Apache Webserver neu, um deine Änderungen zu übernehmen, indem du den folgenden Befehl ausführst.
sudo systemctl restart apache2
UFW einrichten
Bevor du UFW einrichtest, solltest du sicherstellen, dass es funktioniert. In diesem Abschnitt aktivierst du das Profil Apache Full
, um HTTP- und HTTPS-Zugang zu ermöglichen.
Führe den folgenden Befehl aus, um HTTP- und HTTPS-Ports über das UFW-Profil Apache Full
zu öffnen.
sudo ufw allow ‚Apache Full‘
Lade nun UFW neu und überprüfe seinen Status mit dem unten stehenden Befehl. Du wirst sehen, dass UFW active
ist und das Profil Apache Full
aktiviert ist.
sudo ufw status
Umami mit HTTPS absichern
Um Umami zu sichern, wirst du HTTPS verwenden. In diesem Abschnitt erstellst du SSL/TLS-Zertifikate mit letsencrypt. Lokale Domänenbenutzer können selbstsignierte Zertifikate verwenden.
Installiere certbot
und python3-certbot-apache
mit dem unten stehenden Befehl. Gib Y
ein, um die Installation zu bestätigen.
sudo apt install certbot python3-certbot-apache
Führe nun den unten stehenden Befehl certbot
aus, um SSL/TLS-Zertifikate für Umami zu erzeugen. Achte darauf, dass du den Domänennamen und die E-Mail-Adresse mit deinen Daten änderst.
sudo certbot –apache –agree-tos –no-eff-email –redirect –hsts –staple-ocsp –email alice@hwdomain.io -d analytics.hwdomain.io
Nachdem der Vorgang abgeschlossen ist, sind deine SSL-Zertifikate im Verzeichnis /etc/letsencrypt/live/domain.com
verfügbar und deine Umami-Installation sollte mit HTTPS gesichert sein.
Zugriff auf Umami
Öffne deinen Webbrowser und besuche https://analytics.hwdomain.io/, um auf deine Umami-Installation zuzugreifen. Melde dich mit dem Standardbenutzer admin
und dem Passwort umami
an.
Wenn du erfolgreich bist, siehst du das Umami Dashboard wie folgt:
Um neue Analysen für deine Websites hinzuzufügen, klicke auf die Schaltfläche Websites > Websites hinzufügen. Um das Standardpasswort zu ändern, klickst du auf Einstellungen > Benutzer > Bearbeiten.
Fazit
Herzlichen Glückwunsch! Du hast die datenschutzorientierte Analysefunktion von Umami auf dem Ubuntu 24.04 Server installiert. Umami läuft mit dem PostgreSQL Server und Apache als Reverse Proxy. Außerdem hast du Umami mit HTTPS über certbot und letsencrypt abgesichert.