Syncthing

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen
Syncthing

Syncthing-Logo
Screenshot
Syncthing-Webinterface
Basisdaten

Maintainer Jakob Borg et al.
Erscheinungsjahr 15. Dezember 2013
Aktuelle Version 1.18.1[1]
(3. August 2021)
Betriebssystem Linux, macOS, Microsoft Windows, Android, BSD, Solaris
Programmiersprache Go
Kategorie Dateisynchronisation
Lizenz MPL 2.0[2]
deutschsprachig ja
https://syncthing.net/

Syncthing ist eine quelloffen geschriebene Dateisynchronisation mit Peer-to-Peer-Übertragungen. Es kann Dateien zwischen Geräten in einem lokalen Netzwerk oder zwischen entfernten Geräten über das Internet synchronisieren. Datenschutz und Datensicherheit sind zentraler Bestandteil der Software. Die Software ist in Go geschrieben und über den Hosting-Dienst GitHub verfügbar.[3]

Syncthing basiert auf dem selbst entwickelten, ebenfalls quelloffenen Block Exchange Protocol.[4] Die Dateien werden ohne einen zentralen Server zwischen verschiedenen Geräten synchronisiert. Die Kommunikation ist hierbei mit TLS und Perfect Forward Secrecy gesichert. Jeder Knoten wird über ein Zertifikat identifiziert. Nur explizit ausgewählte Knoten können sich mit dem Cluster verbinden. Für die Konfiguration und die Überwachung von Syncthing steht auf allen Plattformen eine Weboberfläche zur Verfügung. Es lassen sich beliebig viele Verzeichnisse synchronisieren. Pro Gerät kann dabei festgelegt werden, welche einzelnen Ordner geteilt werden sollen.[5]

Infrastruktur[Bearbeiten | Quelltext bearbeiten]

Die Gerätesuche erfolgt über Broadcast-Nachrichten im lokalen Netzwerk und über öffentlich zugängliche, von den Projektentwicklern gehostete Discovery-Server,[6] sowie durch die Gerätehistorie und statischen Gerätenamen. Es gibt auch die Möglichkeit, eigene Discovery-Server zu betreiben, die neben oder als Ersatz für die öffentlichen Server verwendet werden können.[7]

Die Datenübertragung zwischen den Geräten erfolgt Ende-zu-Ende mit TLS verschlüsselt. Können die Geräte nicht direkt miteinander kommunizieren, erfolgt die Verbindung über Relay-Server, die ebenfalls von den Projektentwicklern gehostet werden. Auch hier ist die Kommunikation Ende-zu-Ende mit TLS verschlüsselt, so dass der Relay-Server nur die verschlüsselten Daten sehen kann. Private Relay-Server können auch eingerichtet und konfiguriert werden. Syncthing wechselt automatisch vom Relaying zu direkten Geräte-zu-Gerät-Verbindungen, wenn es erkennt, dass eine direkte Verbindung verfügbar ist.[8]

Die Anwendung kann ohne jegliche Verbindung zu den Projekt- oder Community-Servern verwendet werden,[9] da Programmaktualisierungen, die Bereitstellung von Nutzungsstatistiken, Discovery und Relaying unabhängig voneinander deaktiviert oder konfiguriert werden können.

Konfiguration und Management[Bearbeiten | Quelltext bearbeiten]

Die Konfiguration von Syncthing kann lokal oder remote über eine Weboberfläche, über die REST- und Events[10]-APIs oder mit einem der von der Community bereitgestellten Wrapper-Programme vorgenommen werden. Außerdem gibt es Docker-Images sowie Anleitungen für Konfigurationsmanagement-Lösungen wie Puppet oder Ansible.[11]

Testberichte[Bearbeiten | Quelltext bearbeiten]

Die Webseite Golem.de veröffentlichte 2014 einen Test über Syncthing.[12]

In der c’t 8/2015 wurde ein Bericht über die Einrichtung und Benutzung von Syncthing veröffentlicht.[13] Der Bericht wurde in der c't 14/2021 aktualisiert, besonders bezüglich der Anwendung auf verschiedenen Plattformen (z. B. auch Raspberry Pi).[14]

Weblinks[Bearbeiten | Quelltext bearbeiten]

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. v1.18.1. (abgerufen am 27. August 2021).
  2. LICENSE. In: GitHub. Abgerufen am 16. Juni 2015.
  3. Syncthing. In: GitHub. Abgerufen am 16. Juni 2015.
  4. Block Exchange Protocol v1. Abgerufen am 22. November 2017 (englisch).
  5. Syncthing. Abgerufen am 16. Juni 2015.
  6. Understanding Device IDs — Syncthing v0.14 documentation. In: Docs.syncthing.net. Abgerufen am 29. Juni 2017.
  7. Syncthing Discovery Server — Syncthing v0.14 documentation. In: Docs.syncthing.net. Abgerufen am 29. Juni 2017.
  8. Relaying — Syncthing v0.14 documentation. In: Docs.syncthing.net. Abgerufen am 29. Juni 2017.
  9. Security Principles — Syncthing v0.14 documentation. In: Docs.syncthing.net. Abgerufen am 29. Juni 2017.
  10. https://docs.syncthing.net/dev/events.html
  11. Community Contributions — Syncthing v0.14 documentation. In: Docs.syncthing.net. Abgerufen am 29. Juni 2017.
  12. Jörg Thoma: Syncthing im Test. In: Golem.de. 16. Juli 2014. Abgerufen am 16. Juni 2015.
  13. Liane M. Dubowy: Dateien synchronisieren mit Syncthing. In: c't Magazin. heise.de, 20. März 2015, abgerufen am 16. Juni 2015.
  14. Ding zum Sichern - Plattformunabhängiges Backup mit Syncthing. In: c't Magazin. Abgerufen am 25. Juni 2021.