Syncthing

from Wikipedia, the free encyclopedia
Syncthing

Syncthing logo
Screenshot
Syncthing web interface
Basic data

Maintainer Jakob Borg et al.
Publishing year December 15, 2013
Current  version 1.8.0
( August 11, 2020 )
operating system Linux , macOS , Microsoft Windows , Android , BSD , Solaris
programming language Go
category File synchronization
License MPL 2.0
German speaking Yes
http://syncthing.net

Syncthing is an open source written file synchronization with peer-to-peer transfers. It can synchronize files between devices on a local network or between remote devices over the Internet. Data protection and data security are central components of the software. The software is written in Go and available through the hosting service GitHub .

Syncthing is based on the in-house developed, also open source Block Exchange Protocol . The files are synchronized between different devices without a central server. Communication is secured with TLS and Perfect Forward Secrecy . Each node is identified by a certificate . Only explicitly selected nodes can connect to the cluster . A web interface is available on all platforms for configuring and monitoring Syncthing . Any number of directories can be synchronized. For each device, you can define which individual folders are to be shared.

Infrastructure

The device search takes place via broadcast messages in the local network and via publicly accessible discovery servers hosted by the project developers, as well as through the device history and static device names. There is also the option of running your own discovery servers that can be used alongside or as a replacement for the public servers.

The data transfer between the devices is end-to-end encrypted with TLS . If the devices cannot communicate directly with each other, the connection is made via relay servers, which are also hosted by the project developers. Here, too, communication is end-to-end encrypted with TLS , so that the relay server can only see the encrypted data. Private relay servers can also be set up and configured. Syncthing automatically switches from relaying to direct device-to-device connections when it detects that a direct connection is available.

The application can be used without any connection to the project or community servers, as program updates, the provision of usage statistics, discovery and relaying can be deactivated or configured independently of each other.

Configuration and management

Syncthing can be configured locally or remotely via a web interface, via the REST and Events APIs or with one of the wrapper programs provided by the community. There are also Docker images and instructions for configuration management solutions such as Puppet or Ansible .

Test reports

In c't 8/2015 a report on the setup and use of Syncthing was published.

The website Golem.de published a test about Syncthing in 2014.

Web links

Individual evidence

  1. Release 1.8.0 . August 11, 2020 (accessed August 16, 2020).
  2. LICENSE . In: GitHub . Retrieved June 16, 2015.
  3. ^ Syncthing . In: GitHub . Retrieved June 16, 2015.
  4. Block Exchange Protocol v1. Retrieved November 22, 2017 .
  5. ^ Syncthing . Retrieved June 16, 2015.
  6. Understanding Device IDs - Syncthing v0.14 documentation . Retrieved June 29, 2017.
  7. Syncthing Discovery Server - Syncthing v0.14 documentation . Retrieved June 29, 2017.
  8. Relaying - Syncthing v0.14 documentation . Retrieved June 29, 2017.
  9. Security Principles - Syncthing v0.14 documentation . Retrieved June 29, 2017.
  10. https://docs.syncthing.net/dev/events.html
  11. Community Contributions - Syncthing v0.14 documentation . Retrieved June 29, 2017.
  12. Liane M. Dubowy: Synchronizing files with Syncthing. In: c't magazine. heise.de, March 20, 2015, accessed on June 16, 2015 .
  13. Jörg Thoma: Syncthing in the test . In: Golem.de . July 16, 2014. Retrieved June 16, 2015.