Direkt zum Hauptinhalt

Brave Sync Server

Beschreibung:

Mann kann den Brave Sync Server.
Auch selbst betreiben, gibt ein Projekt auf Github im docker-container dafür.

https://github.com/brave/go-sync

Was Brave Sync aktuell synchronisiert (Stand 2025):

Kategorie Synchronisiert? Beschreibung
🔖 Lesezeichen ✅ Ja Alle Lesezeichen inkl. Ordnerstruktur
📂 Lesezeichen-Favoritenleiste ✅ Ja Auch diese wird übernommen
📄 Chronik (Verlauf) ✅ Ja Browser-Historie
🧠 Formulardaten (Autofill) ✅ Ja Namen, Adressen, Telefonnummern, etc.
🔐 Passwörter ✅ Ja Gespeicherte Anmeldedaten
🎨 Designs/Themes ✅ Ja Farbthema des Browsers
🧩 Erweiterungen/Add-ons ✅ Ja Installierte Chrome-Extensions
⚙️ Einstellungen ✅ Ja Viele (nicht alle) Einstellungen werden übernommen
📱 Offene Tabs ✅ Ja Geräteübergreifender Tab-Verlauf
🧭 Suchmaschinen-Einstellungen ✅ Ja Eigene oder angepasste Suchanbieter
🔒 Zahlungsmethoden ✅ Ja Kreditkartendaten etc. (wenn aktiviert)


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)

grafik.png

grafik.png

🔐 🔄 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:

  1. Öffne diese Adresse in Firefox: about:support

     

    1. Klicke oben rechts auf den Button:

      „Firefox bereinigen…“

    2. Bestätige den Dialog:

      „Firefox bereinigen“

    3. Firefox wird neu gestartet – es wird:

      • ein neues Profil angelegt

      • Lesezeichen, Passwörter und Cookies optional übernommen

      • aber: Add-ons, Einstellungen, about:config-Werte, Suchmaschinen, Themes etc. werden gelöscht


    💡 Was genau wird gelöscht?

    Wird behalten Wird gelöscht
    ✔ Lesezeichen ❌ Add-ons
    ✔ Passwörter ❌ Themes
    ✔ Cookies ❌ Einstellungen (auch about:config)
    ✔ Chronik (optional) ❌ Suchmaschinen (benutzerdefiniert)
      ❌ Benutzerprofileinstellungen