Syncthing - Cloud-Synchronisation ohne Cloud

Syncthing - Cloud-Synchronisation ohne Cloud

🌐 Read in English
📅 2025-03-16 ✏ 2026-07-11 ✍ Andreas Wittmann đŸ‘ïž ... linux syncthing

Vor kurzem bin ich wieder ĂŒber dieses Tool gestolpert — etwas, von dem ich schon vor einer Weile gehört, es aber nie wirklich ausprobiert hatte. FrĂŒher habe ich bsync, unison und ein paar andere verwendet, aber keines davon hat mich wirklich ĂŒberzeugt. Meistens bin ich am Ende doch wieder beim guten alten rsync gelandet. Mit Syncthing habe ich endlich etwas gefunden, das ich auf meiner gesamten Infrastruktur ausrollen möchte.

Syncthing synchronisiert Dateien direkt zwischen GerĂ€ten — kein Cloud-Dienst, kein Server eines Drittanbieters, kein Account nötig. Alles bleibt innerhalb des eigenen Netzwerks. Es lĂ€uft unter Linux, Windows, macOS und Android.

Installation

Unter Debian/Ubuntu installiert man am besten aus dem offiziellen Syncthing-Repository, um aktuelle Versionen zu bekommen:

curl -s https://syncthing.net/release-key.txt | sudo gpg --dearmor -o /usr/share/keyrings/syncthing-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/syncthing-archive-keyring.gpg] https://apt.syncthing.net/ syncthing stable" | sudo tee /etc/apt/sources.list.d/syncthing.list
sudo apt update && sudo apt install syncthing

Als systemd-Dienst ausfĂŒhren

Syncthing fĂŒr den eigenen Benutzer aktivieren und starten (username durch den tatsĂ€chlichen Benutzernamen ersetzen):

sudo systemctl enable syncthing@username
sudo systemctl start syncthing@username

Sobald es lÀuft, ist die Web-OberflÀche unter http://localhost:8384 erreichbar.

Um von einem anderen Rechner aus auf die Web-OberflÀche zuzugreifen (z.B. bei einem Headless-Server), den Port per SSH weiterleiten:

ssh -L 8384:localhost:8384 user@server

GerĂ€te hinzufĂŒgen

Jede Syncthing-Installation hat eine eindeutige Device ID — eine lange alphanumerische Zeichenkette, die in der Web-UI unter Actions → Show ID sichtbar ist. Um zwei GerĂ€te zu verbinden:

  1. Die Device ID von GerÀt A kopieren
  2. Auf GerĂ€t B zu Add Remote Device gehen und die ID einfĂŒgen
  3. GerĂ€t A erhĂ€lt eine Verbindungsanfrage — diese bestĂ€tigen
  4. Bei Bedarf in die andere Richtung wiederholen

Syncthing handelt dann eine direkte Verbindung zwischen den beiden GerÀten aus.

Ordner teilen

Sobald GerÀte gekoppelt sind, lassen sich Ordner zwischen ihnen teilen:

  1. In der Web-UI auf Add Folder klicken
  2. Einen lokalen Pfad und eine gemeinsame Folder ID festlegen (muss auf beiden Seiten ĂŒbereinstimmen)
  3. Unter Sharing auswÀhlen, welche GerÀte Zugriff haben sollen
  4. Einen Sync-Typ wÀhlen: Send & Receive, Send Only oder Receive Only

Das entfernte GerÀt erhÀlt eine Freigabeanfrage und muss diese bestÀtigen, bevor die Synchronisation beginnt.

Relay-Server deaktivieren

StandardmĂ€ĂŸig kann Syncthing den Datenverkehr ĂŒber öffentliche Relay-Server leiten, falls keine direkte Verbindung möglich ist. Um die Synchronisation strikt innerhalb des eigenen Netzwerks zu halten, sollte man Relaying deaktivieren:

Unter Actions → Settings → Connections folgende Optionen abwĂ€hlen:

Mit deaktiviertem Relaying synchronisieren GerÀte nur, wenn sie sich direkt erreichen können. Das ist auch eine kleine Sicherheitsverbesserung, da nie Datenverkehr das eigene Netzwerk verlÀsst.

Dateien ausschließen

Syncthing liest eine .stignore-Datei im Wurzelverzeichnis jedes geteilten Ordners. Die Muster funktionieren Àhnlich wie bei .gitignore:

# compiler output
*.o
*.a
*.so

# build directories
/build/
/dist/

# editor temporaries
*.swp
.DS_Store

Die .stignore-Datei selbst wird nicht synchronisiert — jedes GerĂ€t pflegt seine eigene.

Versionierung

Syncthing kann frĂŒhere Versionen geĂ€nderter oder gelöschter Dateien aufbewahren. Unter Edit Folder → File Versioning stehen mehrere Strategien zur VerfĂŒgung:

FĂŒr die meisten AnwendungsfĂ€lle ist Trash Can oder Staggered eine gute Wahl.