Ein gemeinsamer Ordner mit einem festen Mittelpunkt
Ich wollte Dateien auf meinen mobilen Geräten und den Laptops bearbeiten können, ohne sie jedes Mal von Hand zu kopieren. Auf meinem dauerhaft erreichbaren Heimserver läuft Syncthing als Docker-Anwendung, verwaltet über einen Compose-Stack in Portainer. Die Endgeräte gleichen ihren jeweiligen lokalen Ordner mit diesem zentralen Ordner ab.
Die Geräte müssen dafür nicht alle untereinander verbunden sein. In meinem Aufbau hat jedes Endgerät nur den Server als Gegenstelle. Ändert ein Laptop eine Datei, gelangt sie zunächst dorthin. Ein anderes Gerät erhält die Änderung, sobald es mit dem Server verbunden ist. Der Server ist damit eine bewusste Organisationsentscheidung, keine allgemeine Pflicht von Syncthing.
Container, Konfiguration und Dateien getrennt betrachten
Für meinen Aufbau nutze ich das Syncthing-Image von LinuxServer.io. Die Compose-Definition beschreibt den Dienst; seine Konfiguration und der gemeinsame Sync-Ordner liegen außerhalb des austauschbaren Containers in dauerhaft eingebundenen Verzeichnissen. So bleiben Einstellungen und Dateien bei einer Neuerstellung erhalten.
Wichtig sind passende Schreibrechte: Der Benutzer im Container muss auf die zu synchronisierenden Dateien zugreifen dürfen. Beim LinuxServer-Image lassen sich Benutzer- und Gruppenkennung über PUID und PGID an die vorhandene Ablage anpassen. Die Werte und Pfade müssen zur eigenen Umgebung passen; die Image-Dokumentation ist dafür die maßgebliche Vorlage.
Bei Docker gehört auch der Netzwerkmodus zur Planung. Er beeinflusst, welche lokalen Adressen und Erkennungsnachrichten der Dienst erreicht. Feste Gegenstellen helfen bei einem überschaubaren Aufbau. Wer lokale Discovery verwenden möchte, sollte sie im gewählten Containernetz gezielt testen.
Beide Richtungen und dieselbe Ordner-ID
Der gewünschte Modus heißt „Senden und Empfangen“. Änderungen sollen sowohl vom Server zu den Geräten als auch zurück laufen. Syncthing bietet außerdem einseitige Ordnermodi; deshalb reicht ein ähnlich klingender Ordnername allein nicht, um die gewünschte Funktion zu erkennen.
Für denselben gemeinsamen Ordner müssen die Gegenstellen dieselbe Ordner-ID verwenden. Der sichtbare Name und der lokale Speicherpfad dürfen verschieden sein. Beim Einrichten sollte man deshalb die angebotene Ordnerfreigabe gezielt zuordnen und prüfen, anstatt auf jedem Gerät unabhängig einen neuen Synchronisationsordner anzulegen.
Dateiabgleich und Verwaltung sind zwei verschiedene Zugänge
Eine wichtige Trennung war die zwischen dem Dateiübertragungsdienst und seiner Weboberfläche. In meinem Aufbau reicht TCP-Port 22000 für die gewählte direkte Syncthing-Verbindung. Syncthing kann auch andere Transportwege verwenden; die Portangabe beschreibt meine Konfiguration, keine Regel für jedes mögliche Netzwerk.
Die Verwaltung nutzt normalerweise Port 8384. Nach der Einrichtung habe ich ihren zusätzlichen Zugang für unterwegs wieder entfernt. Für das laufende Synchronisieren brauchen die mobilen Geräte diesen Verwaltungsweg nicht. Der interne Administrationszugang bleibt davon getrennt. Ein abgeschalteter Proxy-Eintrag allein wäre dabei kein vollständiger Beleg einer Netzwerksperre; auch die passende Firewall-Ausnahme wurde zurückgenommen.
Feste Adressen und der Wechsel zwischen WLAN und Ethernet
Auf den Geräten sind für den Server eine Adresse im Heimnetz und seine Tailscale-Adresse hinterlegt. Damit ist klar, welche Gegenstelle angesprochen werden soll. Der Server benötigt natürlich einen erreichbaren Dienst und die passenden Freigaben auf dem tatsächlich genutzten Weg.
Bei einem Laptop kann sich die lokale Adresse ändern, wenn er von Ethernet auf WLAN wechselt. Auf dem Server haben wir deshalb bei den Laptop-Gegenstellen zusätzlich „dynamic“ ergänzt. Die lokale Erkennung bleibt eingeschaltet und kann passende Adressen im selben Netz finden. Über getrennte Netze oder gesperrte Broadcasts ist das nicht automatisch möglich; dort bleiben erreichbare feste Adressen oder andere bewusst eingerichtete Wege nötig.
Nur die benötigten Geräte und den benötigten Port freigeben
Tailscale stellt den privaten Netzwerkweg für unterwegs bereit. Meine Regeln erlauben ausgewählten Geräten den Zugriff auf das Synchronisationsziel und den benötigten TCP-Port. Sie geben nicht pauschal alle Dienste des Servers frei. Welche Adresse als Ziel gilt, hängt davon ab, ob der Dienst über die Tailscale-Adresse oder über eine freigegebene Route ins Heimnetz erreicht wird.
Die Netzwerkfreigabe ersetzt die Kopplung in Syncthing nicht. Die Geräte müssen einander dort ebenfalls kennen und den Ordner miteinander teilen. Außerdem muss die gesamte Tailscale-Regelmenge stimmen: Eine zusätzliche enge Regel nimmt einer bereits vorhandenen breiten Freigabe keine Rechte weg.
Discovery, Relays und automatische Routerfreigaben bewusst wählen
In meiner Syncthing-Konfiguration sind globale Gerätesuche und Syncthing-Relays ausgeschaltet. Die festgelegten Verbindungswege funktionieren in meinem Einsatz bisher gut. Das ist eine Entscheidung für diese Umgebung; bei fehlender direkter Erreichbarkeit können die abgeschalteten Funktionen sonst eine Verbindung verhindern.
Auch Syncthings NAT-/UPnP-Automatik ist auf dem Server aus. Syncthing soll dort keine automatischen Router-Portzuordnungen anfordern. Daraus folgt weder, dass vorhandene Routerfreigaben entfernt wurden, noch dass die Routereinstellungen oder Tailscales eigene Verbindungsmechanismen global geändert wären.
Dabei sind zwei Ebenen zu unterscheiden: Keine Syncthing-Relays zu verwenden garantiert noch keine durchgehend direkte Tailscale-Verbindung. Tailscale kann je nach Netz einen eigenen Vermittlungsweg wie DERP nutzen. Ob dieser Netzwerkweg direkt oder vermittelt ist, lässt sich gesondert mit Tailscales Verbindungsanzeige prüfen.
Auf iPhone und iPad gelten die Grenzen von iOS
Auf iPhone und iPad nutze ich Möbius Sync. Die App bringt Syncthing auf diese Geräte, arbeitet aber innerhalb der Hintergrundbeschränkungen von iOS. Ein eingeschalteter Server bedeutet deshalb nicht, dass das iPhone jederzeit sofort im Hintergrund nachzieht.
Für eine bewusst angestoßene Übertragung öffne ich die App und lasse ihr Zeit für Verbindung und Abgleich. Der Hersteller weist darauf hin, dass iOS die Hintergrundausführung selbst plant. Ein verlässlicher Arbeitsablauf berücksichtigt das, anstatt eine permanente Hintergrundverbindung zu versprechen.
Updates mit erhaltenen Daten und einer echten Sync-Probe
Für ein Container-Update lade ich das neue Image und lasse den vorhandenen Stack mit denselben dauerhaften Einbindungen neu erstellen. Konfiguration und Dateien werden vorher gesichert. Ein versehentlich leer eingebundener Konfigurationsordner könnte eine neue Geräteidentität erzeugen; deshalb gehören die richtigen Pfade zum Rückweg.
Nach dem Start genügt mir der Containerstatus allein nicht. Ich prüfe, ob die bekannte Geräteidentität und die Ordner vorhanden sind, die Gegenstellen verbunden werden und eine kleine Testdatei in beide Richtungen ankommt. Erst dieser Abgleich zeigt, dass die Anwendung im Alltag wieder arbeitet.
Synchronisation braucht weiterhin eine eigene Sicherung
Beim bidirektionalen Abgleich werden auch Löschungen und unerwünschte Änderungen weitergegeben. Ein überall gleicher Ordner ist deshalb noch keine unabhängige Sicherung. Gerade das macht einen Test mit unwichtigen Dateien vor der ersten großen Übernahme sinnvoll.
Syncthing kann Dateiversionierung ergänzen. Für einen verlässlichen Rückweg bleibt trotzdem eine getrennte Datensicherung wichtig. Ich würde auch gleichzeitig geänderte Dateien auf mehreren Geräten nicht als kollaboratives Bearbeiten missverstehen: Entstehende Konfliktkopien müssen geprüft werden.
Mein Ergebnis
Für mich ist Syncthing eine nützliche Docker-Anwendung für einen klar umrissenen Zweck: Dateien auf eigenen Geräten abgleichen. Der Container übernimmt den dauerhaft erreichbaren Mittelpunkt; die Endgeräte behalten lokale Kopien. Tailscale ergänzt den privaten Netzwerkweg für unterwegs, während der Verwaltungszugang getrennt bleibt.
Dieser Artikel beschreibt meine Einrichtung und die bisherigen Erfahrungen. Er enthält keine internen Adressen oder Zugangsdaten und ist keine unverändert zu übernehmende Komplettkonfiguration. Dauerhafte Datenablage, überschaubare Freigaben und eine unabhängige Sicherung sind dabei genauso wichtig wie das gestartete Image.