cd ../projects
2026-03-25·4 min de lecture

Home Lab : Ma Synchro P2P « Zero-Trust » (Syncthing & Raspberry Pi)

Home Lab

🚀 Home Lab : Ma Synchro P2P « Zero-Trust » (Syncthing & Raspberry Pi)

Salut à tous ! Dans mon dernier article, je vous présentais mon setup CasaOS et je teasais mon prochain move : dégager mes derniers fichiers du Cloud public.

On n'y est pas encore à 100%, mais chaque brique posée nous rapproche de l'objectif final : le 0 Cloud. Aujourd'hui, on s'attaque à un gros morceau : le remplacement de Dropbox et Google Drive par une solution 100% auto-hébergée et gérée par nos soins : Syncthing.

L'idée ? Retrouver la fluidité de la synchro instantanée, mais avec une sécurité de "chercheur en cyber" et une souveraineté totale sur la donnée.

🏗️ L'Architecture : Le Raspberry Pi comme "Passerelle"

Contrairement à un cloud classique, Syncthing est Peer-to-Peer (P2P). Il n'y a pas de serveur central obligatoire... mais pour le confort, on va tricher un peu.

Mon architecture repose sur trois piliers :

Le NAS (Raspberry Pi) : Mon nœud "Always-on" sous CasaOS. Il sert de tampon permanent.

Les PC Windows : Équipés de SyncTrayzor pour une intégration parfaite à l'OS.

Le protocole BEP : Le moteur qui fait transiter les données de manière intelligente.

Pourquoi le Pi au milieu ? Si mon PC fixe est éteint et que je bosse sur mon laptop, le Pi récupère les modifs. Dès que le fixe s'allume, il se met à jour depuis le Pi. C’est transparent, ultra-rapide, et ça tourne 24h/24 pour une consommation électrique dérisoire.

⚙️ Sous le capot : L'ADN Technique

Syncthing, c'est une sacrée pièce d'ingénierie. Voici pourquoi ça tourne aussi bien :

Le Langage : Go Comme CasaOS, Syncthing est écrit en Go. C’est ce qui permet d'avoir un binaire ultra-léger qui ne met pas mon Raspberry Pi à genoux, même avec des milliers de fichiers.

Le Protocole : BEP (Block Exchange Protocol) Ici, on ne renvoie pas tout un fichier de 1 Go pour une virgule modifiée. Syncthing découpe tout en blocs et ne synchronise que ce qui a changé. Efficacité maximale.

SyncTrayzor (Windows) C'est le "wrapper" indispensable sur PC. Il apporte une icône en barre des tâches, des notifications natives et surtout un Filesystem Watcher qui détecte instantanément quand j'enregistre un fichier.

🛠️ Installation : La méthode Docker (Propre)

Sur mon Raspberry Pi sous CasaOS, je pourrais utiliser l'App Store, mais pour garder la main sur mes volumes et mon réseau, je préfère passer par un Docker Compose. C’est plus propre pour la maintenance.

Voici un exemple de fichier de configuration sous CasaOS :

services:
  syncthing:
    image: syncthing/syncthing:latest
    container_name: syncthing
    hostname: nas-pi-syncthing
    environment:
      - PUID=1000
      - PGID=1000
    volumes:
      - /DATA/AppData/syncthing:/var/syncthing/config
      - /DATA/Storage:/var/syncthing/data # Définissez des chemins relatifs à votre env
    ports:
      - 8384:8384 # Interface Web (GUI)
      - 22000:22000/tcp # Transfert de données
      - 22000:22000/udp # Transfert de données (QUIC)
      - 21027:21027/udp
    restart: unless-stopped

Une fois déployé, l'interface est accessible sur le port 8384. C’est ici que la magie commence.

⚙️ Configuration : Le guide pas à pas

1. Le "Handshake" (L'échange d'ID)

Tout commence par l'identification. Chaque machine possède une clé unique (Device ID). Pour que mon PC principal puisse parler au Raspberry Pi, je dois d'abord récupérer l'ID du Pi et l'ajouter sur mon PC. C'est le principe même du Zero-Trust : pas d'invitation explicite, pas de connexion.

Image de l'interface Syncthing : Ajout d'un appareil via son ID

2. Partage du dossier (Exemple : CurseForge)

Une fois le lien établi, on passe au partage. Prenons un cas concret : mes instances de jeux CurseForge. Je veux retrouver mes mods et mes réglages sans avoir à les copier manuellement.

Sur mon PC n°1, je crée le dossier dans Syncthing.

Je sélectionne le répertoire CurseForge local et je l'envoie vers le Raspberry Pi.

Image du menu de configuration : Partage du dossier CurseForge

3. La boucle est bouclée

C'est là que le Raspberry Pi joue son rôle de passerelle. Sur l'interface du Pi, j'accepte le dossier entrant (que je stocke sur mon stockage NAS). Ensuite, j'ajoute mon second PC à la liste des appareils autorisés sur ce dossier.

Sur mon PC n°2, une notification apparaît : il ne me reste plus qu'à accepter le partage et choisir où enregistrer les fichiers. Hop ! Mes instances sont synchronisées partout, en transitant par mon nœud sécurisé.

🛡️ Focus Sécurité : Le point de vue Cyber

C'est là que je deviens pointilleux. Syncthing est conçu avec une approche Privacy by Design :

Chiffrement TLS 1.3 : Tout le trafic est chiffré. Même si quelqu'un sniffe votre réseau local ou votre Wi-Fi, il ne verra que du bruit.

Authentification Mutuelle : Pour qu'un appareil communique avec un autre, ils doivent mutuellement s'ajouter via leurs IDs uniques. C'est du "Zero Trust" appliqué au stockage.

Perfect Forward Secrecy (PFS) : Les clés de session sont éphémères. Si une clé est compromise un jour, vos échanges passés restent protégés.

Zéro Serveur Tiers : Vos données ne touchent jamais les serveurs d'une entreprise. Même si vous utilisez les relais (Relays) pour traverser votre NAT, les données y transitent chiffrées de bout en bout.

🎮 Mes cas d'usages prioritaires

1. Mes projets Dev & Scripts

Fini les clés USB forcés entre deux pièces. Mes dossiers de scripts sont synchronisés en 2 secondes entre mon fixe et mon laptop.

2. Le coffre-fort KeePass

C’est l'usage ultime. Ma base .kdbx est synchronisée partout. Syncthing gère nativement les conflits : si je modifie un mot de passe sur deux machines en même temps, il crée un fichier de "conflit" plutôt que d'écraser mes accès.

3. Sauvegardes de Jeux (Game Saves)

Pour les jeux sans Cloud Save (ou les vieux titres), je synchronise directement le dossier dans AppData. Je commence ma partie sur le gros setup, je la finis dans mon lit sur le PC portable. (Oui j’ai commencé mes recherche UNIQUEMENT à cause de ça.)

🚀 Conclusion

Si vous maîtrisez déjà un peu Linux et que vous avez un Raspberry Pi sous le coude, Syncthing est un indispensable de votre Home Lab. C’est robuste, gratuit, et ça vous redonne les clés de votre propre maison numérique.

C’est typiquement le genre d’outil qui, une fois configuré, se fait oublier tout en vous sauvant la mise au quotidien.