How to use Syncthing: a complete guide to syncing without the cloud

Last update: 23/11/2025

  • Syncthing synchronizes folders via P2P with TLS encryption and device approval, without storage servers.
  • It is cross-platform (Linux, macOS, Windows, Android) and offers a web interface, GUI, and background execution.
  • It allows folder modes (send/receive), versioning, exclusion patterns, and clusters with a "presenter".
  • It does not replace backups: it should be combined with external copies and used "Send/Receive Only" when appropriate.
syncthing

There's a way to keep your files up to date across multiple devices without going through the cloud: syncthing. This free and open-source tool synchronizes folders directly between computerswith end-to-end security and without sharing your data with third parties.

Beyond the technical aspects, it shines for its simplicity: you install the service on each computer and choose which folders to share, and that's it. It works on GNU/Linux, macOS, Windows, and Android.It has a web interface and desktop applications, with a clear focus: your data is yours and you decide where it is stored and how it travels.

What is Syncthing and why is it worth it?

 

Syncthing is a cross-platform file synchronization system that focuses on privacy and control. Its license is the Mozilla Public License 2.0 (MPL 2.0)It is developed in Go and uses its own block exchange protocol, known as Block Exchange Protocol (BEP), to transfer data efficiently.

In practice, the project proposes a kind of BYO (Bring Your Own) cloud, where You provide the hardware and the software connects your devices It does not require central storage servers. It supports IPv4 and IPv6, and can utilize relays when a direct connection is not possible.

The project's philosophy is based on several very clear objectives: to prevent data loss, maintain security, facilitate use, automate as much as possible, and be available to everyoneAll of this comes with a clear interface and extensive documentation.

  • Protection against losses: attempts to minimize risks of corruption or accidental deletion.
  • SecurityTLS encryption protects data in transit and each device is explicitly approved.
  • Ease and automation: understandable setup, background synchronization, and no frills.
  • Wide availabilityClients for GNU/Linux, macOS, Windows and Android, plus Docker container option.

To top off, It has a web interface accessible from the browser. And, in GNU/Linux, a GTK-based GUI (in addition to frontends like Syncthing-GTK) that make everyday tasks easier.

Guide to using Syncthing

How it works on a technical level (without getting bogged down in details)

When you share a folder, Syncthing analyzes the files and divides them into blocks. Only synchronize the blocks that changeThis speeds up the transfer and reduces bandwidth consumption. It also applies metadata compression and "light scans" after calculating and remembering complete hashes.

As for security, All communication is encrypted with TLSDevices are identified by a unique ID (derived from their certificate), and the connection between them requires confirmation from both sides. If conflicts occur, the system renames the oldest file with a suffix like "sync conflict" along with the date and time so you can easily resolve it.

For location and connectivity, Syncthing automatically discovers devices on your LAN And, if necessary, it can use public relays. Furthermore, it maintains active connections even if you switch networks, so synchronization continues when you regain internet access.

Installation on major systems

In GNU/Linux you can install it from official repositories or from the project itself. In Debian/Ubuntu and derivatives, it is recommended to use the official repository and import the PGP key.While Fedora, CentOS, and similar systems include it in their repositories as EPEL. In Arch/Manjaro, it's in the corresponding repositories.

Once installed, it is advisable to run the user service with systemd: uses systemctl enable syncthing@usuario y systemctl start syncthing@usuario (replace “username” with your account name). The default web interface is set to http://127.0.0.1:8384 for local administration.

On Windows, the official binary works in a "portable" style, but for a more comfortable experience there are projects like SyncTrayzor, that Syncthing starts in the background, displays notifications, and integrates into the system tray.This way you can forget about open console windows; it starts with the system and stays out of sight until you need it.

On macOS you can download the packaged application that Install Syncthing as a native appOn Android, It is available on the Play Store and F-Droidand allows you to pair your mobile phone with your devices to, for example, automatically transfer photos to your computer.

syncthing

First steps in the web interface

Open the browser and enter http://127.0.0.1:8384 (default port). Ideally, you should activate the GUI username and password. From Actions → Settings → GUI, especially if you are going to expose it outside of localhost or manage it from another computer on the LAN.

You will see a screen with panels for “Folders”, “This device” and “Other devices”. The interface detects the system language and is quite intuitive.From there you can add remote devices, create shared folders, adjust parameters, and check the synchronization status.

Your device ID and pairing

Each Syncthing installation generates its own certificate and associated device ID. That ID allows other devices to find you and request a connection.You'll see it in Actions → Show ID, next to a very useful QR code when you pair with a mobile phone.

To connect two devices, on one of them press “Add Remote Device”, Paste the other person's ID and saveIf both are on the same LAN, Syncthing usually "sees" the second computer without you having to type the code, thanks to local discovery.

When storing it, The second team will see a pairing notification. to accept the connection. When both confirm, the two devices are linked and ready to sync folders.

Share a folder: label, path, and who to share it with

To start syncing, add a folder on one of the devices. Assign a label (descriptive name) and a disk pathYou can share it with one or more teams by selecting them in the “Sharing” tab.

It is not mandatory that the route be the same for all teams; You can map “FotosMóvil” on your PC to “/home/usuario/syncthing/camara”For example. Just try to be organized so you don't get confused when saving files in the right place.

When you share the folder, the other team will receive an invitation to "accept" and choose where to place it on their system. After both sides agree, the synchronization process begins. and you'll see the progress bars, item count, and block index in real time.

syncthing

Folder types and useful settings

Syncthing offers three modes per folder: Send and receive, Send only, and Receive onlyThe first is bidirectional (as usual). “Send only” prevents changes from other teams from impacting the source; useful for a master team pushing content. “Receive only” blocks local modifications from propagating.

The folder editing panel contains some very useful advanced options. For example, You can define a minimum percentage of free disk space, or adjust how and when changes are scanned (scan interval, and real-time observation if appropriate).

You will also find Ignore Patterns (patterns to exclude, such as *.tmp or specific directories), and the section File Versioning to preserve previous versions of files. This versioning is simple but useful for undoing common editing or deletion mistakes.

Another important adjustment is the file verification order and the handling of permissions/owners in UNIX-like systems. If you sync between Windows and Linux, check these boxes to avoid surprises. with the metadata.

Network structures: radial with “presenter” and mesh ideas

With three or more computers, you can set up a more efficient cluster. Let's say A, B, and C. If you mark A as “presenter” (enter) By linking B and C, A "introduces" the devices to each other and the others automatically become aware of each other.

Advantage? If A turns off, B and C will continue to synchronize directly provided they can connect. Furthermore, the transfers are shared: instead of A sending everything, each device contributes, reducing the bandwidth at the source.

The “total mesh” is possible if you mark everyone as presenters among all others, but it is not recommended. "Ghost devices" are generated that are difficult to clean. When one ceases to exist but its reference persists on the network. If Syncthing detects reciprocal presenters, it issues a warning for you to reconsider.

Remote administration and practical tips

Want to manage one team from another? Go to Actions → Settings → GUI and Change the listening address of the web interface to allow access from your LAN (for example, 0.0.0.0:8384). Please include the required username and password.

If you manage a server without a graphical interface, you can edit ~/.config/syncthing/config.xml to adjust parameters, including the GUI. And if everything is done via SSH, a tunnel with port forwarding allows you to "bring" 127.0.0.1:8384 to the device you are connecting from.

When there are strict routers or routers without UPnP, Syncthing can pull relaysThey're very useful as a temporary fix, although they do slow down your connection. If you have control over your network environment, opening ports and routing traffic directly usually provides better performance.

Privacy and security: what you need to know

Communication between devices is encrypted with TLS and each device It has its own certificate and private key.However, privacy doesn't mean total anonymity between peers: linked devices can see your IP address, system, and status (connected, syncing, etc.). Only connect with people you trust.

To function on a global scale, Syncthing uses some public services: global discovery servers, relays, and relay listsIn addition to the update server and, if you agree, anonymous telemetry for statistics. Everything is replaceable if you want to set up your own private network, but it's not necessary for most people.

Ports, performance and conflict resolution

By default, the GUI uses port 8384 on localhostPeer synchronization typically employs 22000 / TCP and the local discovery 21027/UDPIf you have a firewall, open it as needed to improve direct connectivity.

When two computers modify the same file almost simultaneously, the famous “synchronization conflict” appearsSyncthing adds a date suffix so you can choose which version to keep. Keeping versioning enabled helps protect your system.

If you notice that the index is taking a long time, Check the scan and the real-time change "watch".In large repos, adjusting intervals and enabling inotify notification (where applicable) can save CPU without sacrificing coolness.

Containerized installation and other notes

For encapsulated environments, There is an official Docker imageIt's a very convenient way to put Syncthing on NAS, home servers or VPS, keeping the volumes mounted for your folders.

In GNU/Linux with a desktop, Syncthing-GTK or similar frontends facilitate management with an icon in the system tray and direct access to options without opening the browser. On Windows, SyncTrayzor fulfills that role perfectly.

As the project emphasizes, “Your data is yours alone”This approach—without a third-party cloud—is the reason why many users are migrating from Dropbox/Drive for internal work, media streams, or sensitive data.

If you're interested in getting the most out of it, dedicate time to exclusion patterns, bandwidth limits, and versioningThese are the three settings that make the difference in real-world environments with many machines and large directories.

When it comes down to it, Syncthing combines P2P speed, absolute control, and a very user-friendly setup.Once you get it up and running, you can forget about USB drives, email attachments, and endless cloud uploads. And yes, it's surprisingly good.

Exclusive content - Click Here  How to thoroughly customize Windows with RyTuneX: optimize, uninstall, and improve your system