Comment installer le logiciel de synchronisation de fichiers à distance Syncthing sur Debian 11

Syncthing est une application de synchronisation de fichiers gratuite et open-source utilisée pour synchroniser des fichiers entre plusieurs appareils distants sur Internet. Elle fonctionne sur une architecture peer-to-peer et échange les données automatiquement entre deux appareils. Elle vous aide à garder les fichiers et les répertoires synchronisés en temps réel. Toutes les transmissions de données entre plusieurs appareils sont sécurisées et cryptées avec TLS. Il dispose de clients pour Linux, Windows et macOS. Il dispose également d'une application Android pour la synchronisation depuis et vers les smartphones !

Dans ce billet, nous allons vous montrer comment installer le logiciel de synchronisation de fichiers Syncthing sur un serveur Debian 11.

Sommaire

Comment installer le logiciel de synchronisation de fichiers à distance Syncthing sur Debian 11

Prérequis

Ajouter le dépôt de Syncthing

Installer Syncthing sur Debian 11

Créer un fichier de service Systemd pour Syncthing

Définir le mot de passe de l'administrateur de Syncthing

Ajouter chaque serveur à un autre serveur

Création et partage d'un dossier

 

Prérequis

    - Deux serveurs fonctionnant sous Debian 11.

    - Un mot de passe root est configuré sur chaque serveur.

Ajouter le dépôt de Syncthing

Par défaut, Syncthing n'est pas inclus dans le dépôt par défaut de Debian 11. Vous devrez donc ajouter le dépôt de Syncthing sur les deux serveurs.

Tout d'abord, installez les dépendances requises en utilisant la commande suivante :

apt-get install gnupg2 curl apt-transport-https -y

Ensuite, téléchargez et ajoutez la clé GPG avec la commande suivante :

curl -s https://syncthing.net/release-key.txt | apt-key add -

Ensuite, ajoutez le dépôt de Syncthing à APT avec la commande suivante :

echo "deb https://apt.syncthing.net/ syncthing release" > /etc/apt/sources.list.d/syncthing.list

Ensuite, mettez à jour le référentiel avec la commande suivante :

apt-get update -y

Installer Syncthing sur Debian 11

À ce stade, le dépôt de Syncthing est ajouté sur les deux serveurs. Maintenant, exécutez la commande suivante sur les deux serveurs pour installer Syncthing.

apt-get install syncthing -y

Une fois que le Syncthing est installé, vérifiez la version du Syncthing en utilisant la commande suivante :

syncthing --version

Vous obtiendrez le résultat suivant :

syncthing v1.18.6 "Fermium Flea" (go1.17.6 linux-amd64) deb@build.syncthing.net 2021-12-30 12:07:01 UTC [noupgrade]

Créer un fichier de service Systemd pour Syncthing

Ensuite, vous devrez créer un fichier de service systemd sur les deux serveurs pour gérer le Syncthing. Vous pouvez le créer avec la commande suivante :

nano /etc/systemd/system/syncthing@.service

Ajoutez les lignes suivantes :

[Unit]

Description=Syncthing - Open Source Continuous File Synchronization for %I

Documentation=man:syncthing(1)

After=network.target

 

[Service]

User=%i

ExecStart=/usr/bin/syncthing -no-browser -gui-address="0.0.0.0:8384" -no-restart -logflags=0

Restart=on-failure

SuccessExitStatus=3 4

RestartForceExitStatus=3 4

 

[Install]

WantedBy=multi-user.target

Enregistrez et fermez le fichier lorsque vous avez terminé. Ensuite, rechargez le démon systemd pour appliquer les changements.

systemctl daemon-reload

Ensuite, démarrez le service Syncthing avec la commande suivante :

systemctl start syncthing@root

Ensuite, vérifiez l'état du Syncthing en utilisant la commande suivante :

systemctl status syncthing@root

Vous obtiendrez le résultat suivant :

? syncthing@root.service - Syncthing - Open Source Continuous File Synchronization for root

     Loaded: loaded (/etc/systemd/system/syncthing@.service; disabled; vendor preset: enabled)

     Active: active (running) since Mon 2022-01-31 02:28:35 UTC; 11s ago

       Docs: man:syncthing(1)

   Main PID: 2746 (syncthing)

      Tasks: 14 (limit: 2341)

     Memory: 56.3M

        CPU: 1.661s

     CGroup: /system.slice/system-syncthing.slice/syncthing@root.service

             ??2746 /usr/bin/syncthing -no-browser -gui-address=0.0.0.0:8384 -no-restart -logflags=0

             ??2752 /usr/bin/syncthing -no-browser -gui-address=0.0.0.0:8384 -no-restart -logflags=0

 

Jan 31 02:28:36 server1 syncthing[2746]: [6F5DY] INFO: QUIC listener ([::]:22000) starting

Jan 31 02:28:36 server1 syncthing[2746]: [6F5DY] INFO: Loading HTTPS certificate: open /root/.config/syncthing/https-cert.pem: no such file o>

Jan 31 02:28:36 server1 syncthing[2746]: [6F5DY] INFO: Creating new HTTPS certificate

Jan 31 02:28:36 server1 syncthing[2746]: [6F5DY] INFO: Completed initial scan of sendreceive folder "Default Folder" (default)

Jan 31 02:28:36 server1 syncthing[2746]: [6F5DY] INFO: GUI and API listening on [::]:8384

Jan 31 02:28:36 server1 syncthing[2746]: [6F5DY] INFO: Access the GUI via the following URL: http://127.0.0.1:8384/

Jan 31 02:28:36 server1 syncthing[2746]: [6F5DY] INFO: My name is "server1"

Jan 31 02:28:36 server1 syncthing[2746]: [6F5DY] WARNING: Syncthing should not run as a privileged or system user. Please consider using a no>

Jan 31 02:28:36 server1 syncthing[2746]: [6F5DY] INFO: quic://0.0.0.0:22000 detected NAT type: Not behind a NAT

Jan 31 02:28:36 server1 syncthing[2746]: [6F5DY] INFO: quic://0.0.0.0:22000 resolved external address quic://69.87.219.167:22000 (via stun.sy>

Par défaut, Syncthing écoute sur le port 8384. Vous pouvez le vérifier avec la commande suivante :

ss -antpl | grep 8384

Vous obtiendrez le résultat suivant :

LISTEN 0      4096               *:8384             *:*    users:(("syncthing",pid=2752,fd=28))

Définir le mot de passe de l'administrateur de Syncthing

A ce stade, Syncthing est installé et fonctionne sur les deux serveurs. Maintenant, vous devez accéder à l'interface web de Syncthing et définir un mot de passe administrateur.

Pour définir le mot de passe administrateur du premier serveur, ouvrez votre navigateur web et accédez-y en utilisant l'URL http://first-server-ip:8384. Vous devriez voir l'écran suivant :

 
 

Cliquez sur le bouton Paramètres. Vous devriez voir l'écran suivant :

 
 

Dans l'onglet GUI, définissez votre nom d'utilisateur admin, votre mot de passe et cliquez sur le bouton Save pour appliquer les changements. Vous serez redirigé vers la page de connexion de Syncthing :

 
 

Fournissez votre nom d'utilisateur admin, votre mot de passe, et cliquez sur le bouton Sign in. Vous devriez voir le tableau de bord de Syncthing sur l'écran suivant :

 
 

Pour définir le mot de passe administrateur du second serveur, ouvrez votre navigateur web et accédez-y en utilisant l'URL http://second-server-ip:8384. Vous devriez voir l'écran suivant :

 
 

Cliquez sur le bouton Paramètres. Vous devriez voir l'écran suivant :

 
 

Dans l'onglet GUI, définissez votre nom d'utilisateur admin, votre mot de passe et cliquez sur le bouton Save pour appliquer les changements. Vous serez redirigé vers la page de connexion de Syncthing :

 
 

Fournissez votre nom d'utilisateur admin, votre mot de passe et cliquez sur le bouton Sign in. Vous devriez voir le tableau de bord de Syncthing dans l'écran suivant :

 
 

Ajouter chaque serveur à un autre serveur

Ensuite, vous devrez localiser l'ID du périphérique de chaque serveur et l'ajouter à un autre serveur afin de synchroniser les fichiers entre les deux serveurs.

Sur le tableau de bord du premier serveur, cliquez sur Actions > Show ID pour localiser l'ID du périphérique. Vous devriez voir l'écran suivant :

 
 

Sur le tableau de bord du second serveur, cliquez sur Actions > Afficher l'ID pour localiser l'ID du périphérique. L'écran suivant devrait s'afficher :