Syncthing : File Sync P2P et Décentralisé (L'Alternative à Dropbox que Personne ne Voit Venir)
Synchronisez vos fichiers entre appareils sans serveur central, sans cloud, sans abonnement. Guide complet d'installation et configuration de Syncthing.
Le problème que vous avez
Vous avez un dossier “Important” dans Dropbox qui contient 12 743 fichiers dont vous ne savez plus quoi faire ? Vous vous êtes déjà fait avoir par “plus de place” sur Google Drive ? Vous trouvez que synchroniser des fichiers entre trois PC, un NAS et deux smartphones devrait être simple, pas un casse-tête ?
Yeah. Me too.
J’ai longtemps utilisé Dropbox comme tout le monde. Un dossier, ça sync, c’est magique. Jusqu’à ce que je me retrouve payé $12/mois pour synchroniser des fichiers qui, honnêtement, ne quittent jamais mes propres appareils. Je payais pour la commodité, pas pour le stockage — et j’étais le seul client de cette “commodité.”
Alors j’ai installé Syncthing. Et ça m’a pris environ 10 minutes pour remplacer un service que je payais depuis 8 ans.
Qu’est-ce que Syncthing (vraiment)
Syncthing est un outil de synchronisation de fichiers pair-à-pair (P2P) et décentralisé. Il n’y a pas de serveur central. Pas de cloud. Pas de “votre data chez quelqu’un.”
Vos appareils communiquent directement entre eux. Votre PC parle directement à votre téléphone, directement à votre NAS. Aucun intermédiaire. Les données ne passent jamais par un tiers.
C’est de la magie du P2P au service de la vraie utilité.
Ce que Syncthing fait bien :
- Sync temps réel : Changez un fichier sur un appareil, il arrive sur tous les autres en quelques secondes
- Chiffrement de bout en bout : TLS pendant le transfert, rien ne sort de vos appareils
- Versioning : Gardez l’historique de vos fichiers. Supprimé par erreur ? Pas de panique.
- Selective sync : Choisissez quels dossiers sync sur quels appareils (pas tout sur tout)
- Multi-plateforme : Linux, macOS, Windows, Android, FreeBSD, OpenBSD
- Pas d’inscription : Pas de compte, pas de mot de passe, pas d’email
Ce qu’il ne fait PAS :
- Pas de partage public de fichiers (pas de “lien de partage” comme Dropbox)
- Pas de web UI pour accéder à vos fichiers depuis n’importe où
- Pas de stockage cloud (les fichiers n’existent que sur VOS appareils)
C’est important de comprendre ça avant d’installer. Syncthing n’est PAS Google Drive ou Dropbox. C’est un outil de sync entre appareils que VOUS contrôlez. Si vos deux appareils sont dans deux pays différents et éteints, rien ne sync. C’est du P2P pur.
Architecture : Comment ça Marche
Chaque appareil Syncthing a un Device ID unique (un long hash). Pour que deux appareils se sync, ils doivent s’échanger mutuellement leurs Device IDs. C’est le pair-à-pair à l’état pur.
La connexion suit trois étapes :
- Discovery : Les appareils se trouvent via les serveurs de discovery publics (ou vos propres serveurs). Les serveurs savent juste “l’appareil X est joignable à cette adresse IP” — pas de contenu, pas de fichiers.
- Relay : Si la connexion directe ne marche pas (NAT, firewall), les appareils passent par des serveurs relay. Le relay voit le trafic mais pas le contenu (chiffré).
- Sync : Les fichiers circulent via TLS chiffré. Directement. Entre vos appareils. Période.
L’architecture de discovery est décentralisée. Si les serveurs publics de discovery tombent, Syncthing continue de fonctionner tant que les appareils peuvent se connecter directement (même IP, même réseau local).
Prérequis
Rien de spécial. Syncthing est léger.
- Un appareil principal : PC, serveur, NAS
- Un ou plusieurs appareils clients : Téléphone, laptop, autre PC
- Docker (optionnel mais recommandé) : Pour l’installation serveur
Mon setup actuel :
- Machine principale : un petit server Debian chez Hetzner (~200 GB de fichiers syncés)
- Laptop : Mac Mini M1 (dev environment)
- Téléphone : Android (Samsung S23)
- Ancien laptop : Dell XPS qui traîne dans le coin (backup offline)
La RAM utilisée par Syncthing sur le serveur ? ~100 MB. Pour 12 000 fichiers en watch. C’est insignifiant.
Installation sur le Serveur (Docker)
Le Docker image officiel est syncthing/syncthing. Voici mon compose :
services:
syncthing:
image: syncthing/syncthing:latest
container_name: syncthing
hostname: syncthing-server
environment:
- PUID=1000
- PGID=1000
volumes:
- /opt/syncthing/config:/var/syncthing
- /data/sync:/sync
ports:
- "8384:8384" # Web GUI
- "22000:22000/tcp" # Sync protocol (TCP)
- "22000:22000/udp" # Sync protocol (UDP — QUIC)
- "21027:21027/udp" # Local discovery
restart: unless-stopped
Points importants :
- Les ports 22000 (TCP et UDP) doivent être ouverts sur votre firewall/routeur. Sans eux, la connexion directe ne marche pas et Syncthing utilisera les relays (plus lent).
- Le port 8384 est l’interface web. Ne l’exposez pas directement sur internet sans reverse proxy + auth.
- Le UID/GID doivent correspondre à votre utilisateur Linux (généralement 1000:1000).
Lancez :
docker compose up -d
Ouvrez http://<ip>:8384 et vous voyez l’interface Syncthing.
Installation sur d’Autres Appareils
Android (via F-Droid ou Play Store) :
Installez simplement l’app Syncthing. Alternative : Syncthing-Fork sur F-Droid, qui a des features supplémentaires (mode batterie, auto-start).
macOS :
brew install syncthing
Ou installez l’app SyncTrayzor qui est un wrapper Windows. Sur Mac, utilisez directement l’app native Syncthing-Macos.
Windows :
Téléchargez SyncTrayzor. C’est le meilleur client Windows — tray icon, auto-start, GUI intégré.
Une fois installé sur chaque appareil, notez le Device ID affiché dans les settings.
Appairage des Appareils (Peer-to-Peer)
Pour connecter deux appareils :
1. Sur le serveur, ajoutez l’appareil client
Dans l’interface web du serveur (8384) :
- Cliquez Remote Devices → Add Remote Device
- Collez le Device ID du client
- Donnez-lui un nom (ex: “Mon Laptop”, “Téléphone”)
- Cochez les dossiers à partager (vous pouvez en créer de nouveaux)
- Cliquez Save
2. Sur le client, acceptez l’appairage
L’appareil client va recevoir une notification. Acceptez, et choisissez le dossier local correspondant.
Et c’est tout. La sync démarre automatiquement.
Note pratique : Sur un réseau local, la première connexion peut prendre quelques secondes car les appareils négocient via le discovery. Une fois connectés, le transfert est direct (LAN speeds).
Configuration Avancée : Ce Que J’aurais Dû Savoir Plus Tôt
1. Le File Versioning (Le Sauveur de Vie)
Syncthing peut garder des anciennes versions de chaque fichier modifié ou supprimé. Si vous supprimez un fichier par erreur, vous pouvez le récupérer.
Dans l’interface web, cliquez sur un dossier → File Versioning :
- Simple File Versioning : Garde N versions (ex: 10). Le plus simple.
- Staggered File Versioning : Garde des versions intelligentes — 1 par heure pendant 1 jour, 1 par jour pendant 1 mois, 1 par semaine pendant un an. C’est celui que j’utilise.
- Trash Can File Versioning : Déplace les fichiers supprimés dans une corbeille. Vide toutes les N jours.
- External File Versioning : Script personnalisé. Pour les power users.
J’utilise le Staggered avec une limite de 20 GB pour les versions. Ça couvre la plupart des erreurs de suppression ou modifications accidentelles.
2. Ignore Patterns
Vous ne voulez pas sync certains fichiers. .git, node_modules, .DS_Store, les fichiers temporaires…
Dans chaque dossier, créez un .stignore :
.git/
node_modules/
.DS_Store
Thumbs.db
__pycache__/
*.tmp
*.swp
.env
Le piège classique : node_modules sur un projet de dev. J’ai sync un projet React avec 15 000 fichiers node_modules en 2023. Ça a bloqué la sync pendant 40 minutes. Depuis, .stignore est la première chose que je configure sur chaque dossier.
3. Type de Sync : Send-Only vs Receive-Only vs Send & Receive
Chaque dossier peut avoir un mode différent selon l’appareil :
- Send & Receive (par défaut) : Bidirectionnel. Modifiez côté A ou B, ça sync des deux côtés.
- Send Only : L’appareil envoie les mods mais n’accepte pas les mods des autres. Parfait pour un backup NAS.
- Receive Only : L’appareil reçoit les mods mais n’envoie pas. Parfait pour un client en lecture seule.
Mon setup :
- Serveur: Send & Receive pour tout
- Laptop: Send & Receive pour le dossier dev, Receive Only pour les photos du téléphone
- Téléphone: Send & Receive pour le dossier photos, pas d’accès au dossier dev
4. Bandwidth Control
Si votre connexion internet est limitée (vous hébergez depuis chez vous et votre upload est de 5 Mbps), vous pouvez limiter la bande passante de Syncthing :
Dans Settings → Connections :
- Outgoing Rate Limit : En KB/s. 500 = 500 KB/s ≈ 4 Mbps. Gardez de la marge pour le reste.
- Inbound Rate Limit : Même principe.
J’ai un upload de 50 Mbps chez moi, donc pas de limites. Mais sur le VPS Hetzner avec un “fair use” policy, j’ai mis Outgoing Rate Limit à 5000 KB/s (50 Mbps) pour éviter de saturer.
5. Watcher vs Scanner
Par défaut, Syncthing utilise un filesystem watcher (il détecte les changements instantanément). Sur certains systèmes de fichiers ou montages NFS, le watcher ne marche pas. Dans ce cas, Syncthing fait du scanning toutes les X secondes.
Le scan consomme plus de CPU et il y a un délai. Si votre sync est lente sans raison, vérifiez dans les logs si le watcher est actif.
Sur Linux avec ext4/btrfs, le watcher marche parfaitement. Sur NFS ou montages réseau exotiques, il faut parfois désactiver le watcher et laisser le scan tourner.
Mon Setup Complet (Architecture Réelle)
Voici comment je structure mes dossiers :
/data/sync/
├── documents/ # Send & Receive (server, laptop, phone)
├── photos/ # Send & Receive (phone → server, receive-only sur laptop)
├── projects/ # Send & Receive (server, laptop seulement)
├── vault/ # Send & Receive (tous - Obsidian notes)
└── books/ # Send Only (server), Receive Only (laptop, tablet)
Les avantages de cette structure :
- Obsidian Vault sync : Mes notes Obsidian sync entre tous mes appareils. Pas besoin de payer Obsidian Sync (c’est $4/mois, économisés depuis 8 mois).
- Photos automatiques : Mon téléphone sync ses photos vers le serveur. Le laptop les voit mais ne peut pas les modifier.
- Pas de doublons : Chaque dossier a sa propre sync logic. Pas de “ce fichier est sync sur tout alors qu’il devrait l’être sur rien.”
Syncthing vs Les Alternatives
vs Dropbox / Google Drive
| Syncthing | Dropbox | Google Drive | |
|---|---|---|---|
| Stockage | Votre limite disque | Gratuit : 2 GB | Gratuit : 15 GB |
| Prix | Gratuit | $12/mois pour 2 TB | $2/mois pour 100 GB |
| Privacy | E2E, P2P | Chiffré en transit | Chiffré en transit (Google a les clés) |
| Serveur central | Non | Oui | Oui |
| Partage public | Non | Oui (liens) | Oui (liens) |
| Versioning | Oui (configurable) | Oui (30 jours) | Oui (30 jours) |
| Offline | Oui (fichiers locaux) | Oui (smart sync) | Oui (select sync) |
Le compromis : Syncthing ne fait pas le partage public. Si votre but est d’envoyer un fichier à un ami, Dropbox/Drive gagne. Si votre but est de sync vos fichiers entre VOS appareils, Syncthing gagne sans conteste.
vs Nextcloud Files
Nextcloud est une “suite complète” avec sync, partage, calendrier, contacts, et bien plus. Syncthing fait UN truc.
Si vous voulez Nextcloud, utilisez Nextcloud. Mais si vous voulez juste sync des fichiers efficacement, Syncthing est plus léger, plus rapide, et plus fiable. Je les utilise d’ailleurs ensemble — Nextcloud pour le “cloud” (partage, calendrier, contacts), Syncthing pour les fichiers lourds et la sync temps réel.
Dépannage : Les Problèmes que j’ai Rencontrés
Problème : “Appareil non connecté” sur deux appareils différents. Solution : Vérifiez que les ports 22000 TCP/UDP sont bien ouverts. Si vous êtes derrière un NAT (box internet), redirigez ces ports vers l’IP du serveur. Ou vérifiez dans Settings → Connections que “Enable NAT Traversal” est activé.
Problème : Sync infinie qui ne termine jamais.
Solution : Généralement un fichier en boucle (un fichier modifié en continu par un autre process). Vérifiez les logs du dossier. Si c’est un fichier .stfolder ou .stignore, c’est un faux positif de Syncthing.
Problème : “Folder marker missing.”
Solution : Chaque dossier sync a un fichier .stfolder à la racine. Il ne doit JAMAIS être supprimé. S’il est absent, Syncthing considère que le dossier n’est pas un dossier sync. Recréez-le : mkdir .stfolder.
Problème : Android ne sync pas en arrière-plan. Solution : Android tue les apps en arrière-plan. Dans Syncthing Android, allez dans Settings → Run Conditions et activez “Always run in foreground” ou “Run on Wi-Fi only.” Ajoutez aussi l’app aux exceptions de batterie du système (Settings → Battery → Unrestricted).
FAQ
Q: Syncthing est-il sécurisé ? R: Oui. TLS pour tous les transferts, Device IDs pour l’authentification mutuelle, chiffrement de bout en bout. Aucun contenu ne passe en clair.
Q: Est-ce que Syncthing remplace les backups ? R: NON. Syncthing est de la sync, pas du backup. Si vous supprimez un fichier sur tous vos appareils, il disparaît partout. Le versioning aide, mais ce n’est pas un vrai backup. Utilisez Restic ou Borg pour les backups (on en parle dans un autre article!).
Q: Ça marche sur Internet ou juste en LAN ? R: Les deux. Sur LAN, c’est direct (rapide). Sur Internet, ça utilise le discovery pour trouver les appareils et les relays si les connexions directes sont bloquées.
Q: Peut-on sync des très gros fichiers (>10 GB) ? R: Oui, mais c’est plus prudent de les splitter si possible. Syncthing sync par blocks (128 KB par défaut). Un fichier de 20 GB va prendre un moment, surtout avec un upload limité.
Q: Combien d’appareils peut-on connecter ? R: Pas de limite technique. Syncthing gère des centaines d’appareils. La limite pratique est votre réseau et votre bande passante.
Q: Et si je veux accéder à mes fichiers depuis un appareil qui n’est pas le mien (ex: cybercafé) ? R: Syncthing n’est pas fait pour ça. Utilisez un outil comme FileBrowser, Nextcloud, ou un SFTP pour accéder à vos fichiers à distance. Syncthing sync entre appareils de confiance uniquement.
Conclusion
Syncthing est l’un des outils les plus sous-estimés dans l’écosystème self-hosting. Il fait UNE chose (la sync de fichiers), et il le fait mieux que n’importe quel service cloud pour le cas d’usage du self-hoster : sync entre appareils que vous contrôlez.
J’ai arrêté de payer Dropbox il y a 8 mois. Depuis, zéro problème, zéro sync failure, zéro “storage full” surprise. Et je me suis économisé $96.
Le seul truc que Syncthing ne fait pas, c’est le partage public. Si vous avez besoin d’envoyer un fichier à un collègue, Dropbox/Google Drive a encore un rôle à jouer. Mais pour le reste — vos fichiers persos, vos projets, vos notes, vos photos — Syncthing est tout ce dont vous avez besoin.
Écrit le 2026-04-04, sur un setup Debian 12 + Docker, après 8 mois de Syncthing quotidien sur 4 appareils, avec 200 GB syncés. Avec un café — décidément, ces articles me donnent soif.
Stay in the loop 📬
Get self-hosting tutorials, tool reviews, and infrastructure tips delivered to your inbox. No spam, unsubscribe anytime.
Join 0 self-hosters. Free forever.