Firefox Sync Server
Beschreibung:
Mann kann den Firefox Sync Server.
Auch selbst betreiben, gibt ein Projekt auf Github im docker-container dafür.
Das macht das Floccus Addon obsolete.
Vorraussetzung:
Hier https://accounts.firefox.com ein Konto erstellen
Was wird Synchronisiert:
- Passwortsafe
- Formular Daten
- Lesezeichen
- Tabs
- Chronik
Was wird nicht synchronisiert
- Keine Add-ons oder komplette Einstellungen (leider)
Wenn das gewünscht ist müsste man das Firefox Profil auf dateiebene Syncen zum Beispiel mit Nextcloud synthing.
Nachteil es darf immer nur eine Firefox Instanz auf sein.
Aber in der Regel wollen wir ja, gar keine Firefox Einstellungen und Addons syncen
Vorrausetzung:
Public IP
Installation
apt install docker.io docker-compose curl
Verzeichnis erstellen
mkdir /root/mozillasync
nun die .env Datei erstellen
nano /root/mozillasync/.env
Inhalt
PUBLIC_URL ="http://localhost:5000"
# ändere auf https://sync.example.com bei Proxy: "http://localhost:5000" # ändere auf https://sync.example.com bei Proxy
Nun die Docker-compose Datei erstellen
nano /root/mozillasync/docker-compose.yml
Inhalt
version: '3.7'
services:
firefox-sync:
image: mozilla/syncserver
container_name: firefox-sync
restart: unless-stopped
environment:
SYNCSERVER_PUBLIC_URL: ${PUBLIC_URL}
SYNCSERVER_SECRET: "supergeheimes-passwort-ändern" # mind. 8 Zeichen, frei wählbar
SYNCSERVER_SQLURI: 'sqlite:////data/syncserver.db'
SYNCSERVER_BATCH_UPLOAD_ENABLED: "true"
SYNCSERVER_FORCE_WSGI_ENVIRON: "true"
PORT: '5000'
volumes:
- firefox-sync-data:/data
caddy:
image: caddy:latest
restart: always
ports:
- "80:80"
- "443:443"
command: caddy reverse-proxy --from ${PUBLIC_URL} --to firefox-sync:5000
volumes:
- ./data/caddy/data:/data
- ./data/caddy/config:/config
volumes:
firefox-sync-data:
nun Datenverzeichnis anlegen und rechte vergeben
mkdir -p /root/mozillasync/firefox-sync-data
chmod 777 /root/mozillasync/firefox-sync-data
Nun die container starten
docker-compose up -d
Nun noch die ufw Firewall regeln anpassen.
Da hier der Docker container sowieso von außen erreichbar sein soll, brauchen wir hier keine Anspassung für docker.
Aber ssh soll nur auf der lokalen Netzwerkkarte zur Verfügung stehen
ufw installieren
apt install ufw
Nun die Regeln setzten
ufw allow in on enp6s18 to any port 22
ufw enable
Firefox-Konfiguration:
Mozilla Firefox Account erforderlich, aber daten laden aufm Server den wir gerade installiert haben
In Firefox unter about:config:
| Schlüssel | Wert |
|---|---|
identity.sync.tokenserver.uri |
http://localhost:5000/token/1.0/sync/1.5 (oder deine Domain) |
🔐 🔄 Wie funktioniert Firefox Sync (mit eigenem Server)?
✅ Was du selbst hostest:
-
Speicher-Backend für Sync-Daten
-
z. B. Lesezeichen, Passwörter, Chronik
-
liegt auf deinem Server (statt bei Mozilla)
-
❗ Was nicht selbst gehostet wird:
-
Mozilla-Konto-System (Accounts Server / Auth / OAuth)
→ Firefox-Login läuft weiterhin über Mozilla, außer du hostest auch den Firefox Account Server (aufwändig, meist unnötig)
🧠 Was bedeutet das konkret?
| Szenario | Ergebnis |
|---|---|
| Du loggst dich mit deinem Mozilla-Konto ein | Deine Daten landen auf deinem eigenen Server ✅ |
| Fremder kennt deine Sync-Server-Adresse | Er kann sich mit seinem eigenen Mozilla-Konto anmelden |
| Fremder hat nicht dein Mozilla-Passwort | Er kommt nicht an deine Daten 🛡️ |
| Fremder nutzt deinen Server trotzdem | Ja, er kann dort seine eigenen Daten speichern – isoliert |
| Du willst das verhindern | → Mit Basic Auth oder IP-Filter abschotten 🔐 |
🔄 🔧 Firefox zurücksetzen („Bereinigen“)
✅ So geht's Schritt für Schritt:
-
Öffne diese Adresse in Firefox: about:support
💡 Was genau wird gelöscht?

