Wie man seinen eigenen GPS-Tracker mit Ulogger in Linux erstellt

Ulogger ist ein leichtgewichtiger GPS-Tracking-Server für Linux mit einer speziellen mobilen App. In diesem Artikel wird gezeigt, wie man Ulogger auf einem Ubuntu 24.04-Server installiert und mit einem Android-Handy verbindet.
Inhaltsverzeichnis
- Warum GPS-Daten mit Ulogger verfolgen?
- Abhängigkeiten für Ulogger beschaffen
- Ulogger bauen und installieren
- Einrichten eines SSL-Reverse-Proxys mit Nginx
- Ulogger zum ersten Mal ausführen
Warum GPS-Daten mit Ulogger verfolgen?
Ein großer Vorteil des Ulogger GPS-Trackers ist, dass man ihn direkt auf seinem Linux-System hosten kann. Das ermöglicht es, die Geolokationsdaten zu protokollieren, ohne das Risiko, dass unbefugte Personen auf die Daten zugreifen.

Ein weiterer Vorteil von Ulogger ist, dass er Standard-Geolokationsdateiformate wie KML und GPX importieren und exportieren kann. Dies ist eine unschätzbare Funktion, wenn man eine bestehende GPS-Lösung verwendet und seine Daten zu Ulogger übertragen möchte.
Schließlich ist Ulogger Software, die kostenlos und Open Source ist. Das bedeutet, dass jeder auf den Quellcode des Programms zugreifen kann, wodurch Schwachstellen leichter erkannt und behoben werden können. Daher kann Ulogger eine widerstandsfähigere Option sein, wenn man nach einem langfristigen GPS-Logging-Server für Linux sucht.
Zur Information: Lernen Sie, wie GPS-Technologie in einfachen Worten funktioniert.
Abhängigkeiten für Ulogger beschaffen
Voraussetzung: Dieser Artikel geht davon aus, dass Sie Ulogger auf einem Ubuntu 24.04 VPS mit 2 GB RAM installieren und dass Sie derzeit einen Domainnamen besitzen.
Der erste Schritt zur Installation von Ulogger besteht darin, die Abhängigkeiten für Docker zu beschaffen. Dazu importieren Sie den Signierschlüssel für das Repository des Docker-Projekts:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpgErstellen Sie eine neue Repository-Datei für das Docker-Projekt mit Ihrem bevorzugten Texteditor:
sudo nano /etc/apt/sources.list.d/docker.listFügen Sie die folgende Codezeile in Ihre neue Repository-Datei ein:
deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu noble stableAktualisieren Sie die Paketlisten Ihrer Maschine und aktualisieren Sie alle aktuellen Pakete im System:
sudo apt update && sudo apt upgradeStellen Sie sicher, dass das „core“ Snap-Paket auf Ihrem Server läuft:
sudo snap install coreInstallieren Sie das Certbot-Paket von der Electronic Frontier Foundation:
sudo snap install certbot --classicInstallieren Sie Docker, Docker Compose und die Abhängigkeiten zur Bereitstellung von Ulogger:
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx unzip gitUlogger bauen und installieren
Erstellen Sie einen neuen Ordner in Ihrem Heimatverzeichnis und wechseln Sie in diesen:
mkdir ~/ulogger && cd ~/uloggerLaden Sie die neueste Version von Ulogger aus dem Github-Repository des Entwicklers herunter:
git clone https://github.com/bfabiszewski/ulogger-server.git
cd ./ulogger-serverWechseln Sie zur neuesten stabilen Version des Programms:
git checkout -b v1.2 tags/v1.2Öffnen Sie die Dockerfile von Ulogger mit Ihrem bevorzugten Texteditor:
nano ./DockerfileSuchen Sie die Zeilen, die „DB_ROOT_PASS“ und „DB_USER_PASS“ enthalten, und ersetzen Sie deren Werte durch zwei zufällige Textstrings.

Hinweis: Sie können Ihren eigenen zufälligen Text generieren, indem Sie den folgenden Befehl ausführen: cat /dev/urandom | tr -dc 'A-Za-z0-9' | fold -w 32 | head -n 1.
Speichern Sie Ihre Dockerfile und erstellen Sie eine „docker-compose.yml“-Datei mit Ihrem bevorzugten Texteditor:
nano ./docker-compose.ymlFügen Sie den folgenden Codeblock in Ihre Kompositionsdatei ein:
services:
ulogger:
container_name: ulogger-instance
build:
context: .
dockerfile: Dockerfile
ports:
- 8080:80Speichern Sie Ihre docker-compose.yml-Datei und führen Sie den folgenden Befehl aus, um Ihren Ulogger-Docker-Container zu starten:
sudo docker compose up -dÜberprüfen Sie, ob Ulogger ordnungsgemäß läuft, indem Sie die laufenden Container im System auflisten:
sudo docker ps
Einrichten eines SSL-Reverse-Proxys mit Nginx
An diesem Punkt läuft der Ulogger-Server auf Port 8080. Um darauf zuzugreifen, müssen Sie jedoch einen sicheren Proxy für eingehende Verbindungen mit Nginx erstellen.
Beginnen Sie damit, einen neuen „A“-Eintrag für Ihre Domain zu erstellen, der auf die IP-Adresse Ihrer Ulogger-Maschine zeigt.
Gehen Sie zurück zu Ihrem Server und erstellen Sie eine Site-Konfigurationsdatei für Ihre Ulogger-Instanz:
sudo nano /etc/nginx/sites-available/uloggerFügen Sie den folgenden Codeblock in Ihre neue Konfigurationsdatei ein:
server{
server_name SUBDOMAIN.YOUR-ROOT.DOMAIN;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_http_version 1.1;
proxy_redirect off;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Forwarded-Proto https;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
}
}Ersetzen Sie den Wert der Variable „server_name“ durch Ihren Domainnamen.

Speichern Sie Ihre Nginx-Site-Konfigurationsdatei und erstellen Sie einen symbolischen Link zu ihr im „sites-enabled“-Verzeichnis von Nginx:
sudo ln -s /etc/nginx/sites-available/ulogger /etc/nginx/sites-enabled/Aktivieren und starten Sie den Nginx-Dienst auf Ihrer Maschine:
sudo systemctl enable --now nginx.serviceRegistrieren Sie Ihren Ubuntu-Server bei der EFF:
sudo certbot register --agree-tos -m [email protected]Geben Sie „y“ ein und drücken Sie die Eingabetaste.

Holen Sie sich ein neues SSL-Zertifikat für Ihren Ulogger-Domainnamen von der EFF:
sudo certbot --nginx -d SUBDOMAIN.YOUR-ROOT.DOMAINGut zu wissen: Erfahren Sie, wie Sie Ihre Online-Identität schützen können, indem Sie einen E-Mail-Alias-Server mit SimpleLogin erstellen.
Ulogger zum ersten Mal ausführen
Testen Sie, ob Ihre Ulogger-Instanz ordnungsgemäß funktioniert, indem Sie zu Ihrer Subdomain in Ihrem Webbrowser navigieren.

Geben Sie „admin“ sowohl in das Feld Benutzername als auch in das Feld Passwort ein und drücken Sie die Eingabetaste, um sich anzumelden.
Klicken Sie auf den Namen Ihres Kontos in der oberen rechten Ecke der Seite und wählen Sie Passwort ändern.

Geben Sie „admin“ im Feld Altes Passwort ein und geben Sie ein neues Passwort für Ihre Instanz an.

Klicken Sie auf Übermitteln, um Ihre Änderungen zu speichern, und testen Sie es, indem Sie sich von Ulogger abmelden und wieder anmelden.
Gut zu wissen: Erfahren Sie, wie Sie Ihre Urlaubsplanung optimieren können, indem Sie die besten reiseorientierten Tools für Linux ansehen.
Verknüpfen Sie Ihren Ulogger-Server mit Android
Um aktiv Ihre GPS-Spuren zu protokollieren, müssen Sie zunächst die spezielle mobile App von Ulogger besorgen. Im Moment können Sie dieses Programm nur im F-Droid-Store erhalten.

Öffnen Sie die Ulogger Android-App und klicken Sie auf das Zahnrad-Symbol in der oberen rechten Ecke der App.

Tippen Sie auf die Option Location provider und wählen Sie Netzwerk und GPS aus dem Auswahlmenü.

Wählen Sie die Option Benutzername und geben Sie „admin“ in das Textfeld ein.
Tippen Sie auf die Option Passwort und geben Sie das Passwort ein, das Sie für Ihr Administratorkonto festgelegt haben.
Wählen Sie die Option Server-URL und geben Sie die gesamte Basis-URL für Ihren Ulogger-Server an. In meinem Fall ist es „https://gps.myvpsserver.top.“

Aktivieren Sie den Schalter Live-Synchronisierung über der Kategorie Serverdetails. Dadurch wird Ihr Android-Handy in die Lage versetzt, GPS-Daten automatisch an Ihr Ulogger-Backend zu senden.
Gehen Sie zurück zum Hauptbildschirm der mobilen App und tippen Sie auf die Schaltfläche Neue Spur.

Aktivieren Sie den Schalter Tracking, um Ihre GPS-Daten auf Ihrem Ulogger-Server zu protokollieren.

Bestätigen Sie, dass Ulogger korrekt Ihre GPS-Daten verfolgt, indem Sie zu Ihrem Administratorkonto gehen.
Das Hosten Ihres GPS-Tracking-Servers und -Clients mit Ulogger ist nur eine Möglichkeit, um heute Ihre Geolokationsprotokolle im Blick zu behalten. Erfahren Sie, wie Sie Ihren Standort sogar ohne Internetverbindung verfolgen können, indem Sie einige der besten Offline-GPS-Apps für Android überprüfen.
Bildnachweis: Antonio Groß über Unsplash und Ulogger Github. Alle Änderungen und Screenshots von Ramces Red.