GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer Syncthing sur Ubuntu 20.04 et Ubuntu 21.04

Syncthing est une application de synchronisation de fichiers gratuite, open-source et peer-to-peer. Syncthing peut synchroniser des fichiers entre des appareils sur un réseau local ou entre des appareils distants sur Internet, toutes les données transmises entre plusieurs appareils étant cryptées avec TLS. Chaque fois que vous créez, modifiez ou supprimez des données sur un nœud d'appairage, l'application répliquera automatiquement les modifications sur d'autres serveurs. Une autre fonctionnalité populaire est que Syncthing est multiplateforme disponible sur Windows, macOS, Linux, Android, Solaris, Darwin et BSD, ce qui permet de synchroniser plusieurs appareils.

Pour les utilisateurs souhaitant essayer cet excellent logiciel de synchronisation, à la fin de ce guide, vous saurez comment installer Syncthing sur Ubuntu 20.04 LTS . Le même principe fonctionnera pour la nouvelle version d'Ubuntu 21.04 (Hirsute Hippo).

Pré-requis

  • OS recommandé : (2x) Ubuntu 20.04 – facultatif (Ubuntu 21.04 et Linux Mint 20)
  • Compte utilisateur : Un compte utilisateur avec un accès sudo ou root.
  • Packages requis : apt-transport-https, curl

Vérifiez et mettez à jour votre système d'exploitation Ubuntu 20.04.

sudo apt update && sudo apt upgrade -y

Par défaut, les serveurs doivent être accompagnés de (curl) installé, mais vous vérifierez cela en installant le (apt-transport-https) package, qui est nécessaire pour que le gestionnaire de packages APT puisse établir une connexion HTTPS avec ce référentiel.

sudo apt install apt-transport-https curl -y

Installez Syncthing à l'aide du référentiel officiel .Deb

Syncthing se trouve dans les référentiels Ubuntu par défaut, mais n'est pas aussi à jour que beaucoup le souhaiteraient. Au lieu de cela, vous installerez le dépôt officiel source deb :

Tout d'abord, ajoutez la clé GPG en exécutant la commande suivante :

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

Vous devriez obtenir le (Ok) sortie comme ci-dessus dans votre terminal Ubuntu, ce qui signifie que la clé GPG a été importée avec succès. Ensuite, vous devrez ajouter le référentiel Syncthing en exécutant ce qui suit dans votre terminal :

echo "deb https://apt.syncthing.net/ syncthing stable" | sudo tee /etc/apt/sources.list.d/syncthing.list

Vous pouvez maintenant mettre à jour vos référentiels et installer Syncthing :

sudo apt update && sudo apt install syncthing -y

Confirmez l'installation en vérifiant la version build :

syncthing --version

Configurer Syncthing en tant que service Systemd

Synchronisation (.deb) le paquet est livré avec le (systemd) requis fichier de service sous l'emplacement (/lib/systemd/system) . Sous ce répertoire, vous trouverez le ([email protected]) dossier. La façon dont Syncthing fonctionne est que vous devez entrer le nom d'utilisateur du compte entre le (@) et le (.service), par exemple ([email protected]) .

Pour démarrer et activer Syncthing, vous devez exécuter la commande suivante.

sudo systemctl enable [email protected]

Pour savoir si cela a réussi, vous devriez voir l'exemple ci-dessous sortir avec (lien symbolique créé) :

Maintenant que le service est activé au démarrage, vous devez le démarrer manuellement cette fois-ci en exécutant ce qui suit :

sudo systemctl start [email protected]

Maintenant, vous devez vérifier l'état en tapant la commande suivante :

sudo systemctl status [email protected]

Pour quitter l'écran d'état, appuyez sur (Q) ou (CTRL+C) .

Notez que vos fichiers de configuration se trouvent sous (/home/username/.config/syncthing/) et votre dossier de départ par défaut est (/home/username/syncthing/) . Vous pouvez modifier le dossier de départ ultérieurement si vous le souhaitez.

Le fichier de configuration principal se trouve dans (/home/username/.config/syncthing/config.xml) si vous devez modifier ou corriger des paramètres tels que la modification de la valeur par défaut 127.0.0.1 en une adresse IP interne ou externe.

Configurer le pare-feu UFW

Syncthing devra être autorisé à utiliser le port (22000) pour communiquer avec ses pairs. Si vous utilisez UFW, exécutez la commande suivante pour autoriser le port :

sudo ufw allow 22000/tcp

Installer des pairs Syncthing

Pour utiliser Syncthing, vous devrez installer une deuxième copie jusqu'à présent sur un autre serveur ou bureau. La partie la plus fantastique de Syncthing est que vous pouvez l'installer non seulement sur Linux, mais sur plusieurs systèmes d'exploitation.

Notez que si vous utilisez Syncthing pour sauvegarder sur une autre plate-forme qui n'est pas Linux, assurez-vous de définir (recevoir) uniquement car les autorisations de fichiers allant et venant causeront des problèmes.

Première utilisation et configuration Syncthing WebUI

Syncthing écoute (127.0.0.1:8384) par défaut auquel vous pouvez accéder dans votre navigateur Web. Tapez ce qui suit dans la barre d'adresse d'Internet Explorer :

http://127.0.0.1:8384

La première fois que vous ouvrez l'interface utilisateur Web, vous remarquerez qu'une fenêtre contextuelle vous demande (Autoriser les rapports d'utilisation anonyme ?) . Sélectionnez une option pour continuer.

Après avoir trié les rapports d'utilisation, vous serez invité avec une notification (authentification GUI :définir l'utilisateur et le mot de passe). Il est assez important de sécuriser votre service Syncthing, vous devez donc immédiatement appuyer sur (Paramètres) pour passer à la page de configuration.

Écran suivant, sélectionnez (GUI) comme indiqué ci-dessous :

Maintenant, configurez un (nom d'utilisateur) et (mot de passe) . En outre, cette partie vous pouvez définir (HTTPS) pour une utilisation graphique si vous préférez. Une fois que vous avez terminé, appuyez sur (Enregistrer) bouton dans le coin inférieur droit comme indiqué :

Il est maintenant temps de répéter tout le guide ci-dessus sur un deuxième système d'exploitation d'appairage pour passer à la partie suivante du guide, qui nécessite (deux) Synchroniser les clients.

Synchroniser les fichiers et les dossiers entre les appareils

Vous avez maintenant installé 2 clients Syncthing ou plus sur divers appareils et systèmes d'exploitation, et vous pouvez maintenant configurer la synchronisation des fichiers ou des dossiers entre les appareils.

Tout d'abord, dans l'interface Web sur (nœud d'appairage 1) , vous pouvez cliquer sur (Actions > Afficher l'ID) dans le coin supérieur droit, et vous trouverez l'ID de l'appareil, qui est une longue chaîne de lettres et de chiffres.

Vous pouvez également voir le code QT, l'ID de l'appareil, et il est utilisé pour Syncthing sur les smartphones et les tablettes.

L'étape suivante consiste à copier l'(Identification de l'appareil) qui dans l'exemple du guide est (CAL3FN4-R72LBTK-Q3ZFAEC-OUOAIEM-ZOJIMQ3-JHG5OCK-ZSJORVA-64552A3) à partir de l'interface WebUI du nœud à partir duquel vous souhaitez synchroniser les fichiers en premier, que nous avons appelé (nœud d'appairage 1) pour ce guide.

Ensuite, vous ouvrez l'interface Web du deuxième appareil d'appairage (noeud d'appairage 2) et cliquez sur (Ajouter un appareil distant) dans le coin inférieur droit. Collez l'ID de l'appareil, donnez un nom au nouvel appareil, puis cliquez sur (Enregistrer) bouton pour continuer.

Revenons maintenant sur (nœud d'appairage 1 ), vous verrez (nœud d'appairage 2) tenter de se connecter. Si vous ne le voyez pas, actualisez votre page et assurez-vous que UFW ou un pare-feu similaire ne le bloque pas. Cliquez sur (Ajouter un appareil) pour continuer :

Une fois que vous avez cliqué pour ajouter l'appareil, un nouvel écran apparaîtra sur (nœud d'appairage 1). Ici, vous pouvez modifier le nom par défaut de l'appareil, partager automatiquement des fichiers et des répertoires dans le panneau de partage, et plus encore. Cliquez sur (Enregistrer) pour continuer :

Maintenant, les deux nœuds sont connectés. Vous pouvez maintenant partager un répertoire entre les appareils. Par exemple, (nœud d'appairage 1) possède un dossier que vous souhaitez synchroniser entre lui-même et (nœud d'appairage 2) . Le premier clic ajoute un dossier sur (peering node 1) :

Pour le guide, l'exemple a utilisé le (Téléchargements) répertoire à synchroniser entre les appareils, et vous pouvez donner le dossier que vous souhaitez synchroniser à (nœud d'appairage 2) un identifiant unique (nom) . Pour le guide, nous avons nommé l'ID (downloads-backup) et définir le chemin. Ne cliquez pas sur enregistrer. Cliquez sur (Partage) dans la rangée du haut pour continuer :

Maintenant dans le (partage) panneau, cliquez sur le périphérique distant avec lequel partager. Dans notre exemple ci-dessous, il s'agit de (nœud d'appairage 2), puis cliquez sur Enregistrer pour continuer.

Maintenant dans (nœud d'appairage 1) , vous remarquerez que le dossier s'analyse lui-même, ce qui est bien, revenez maintenant sur le (nœud d'appairage 2) et vous verrez une nouvelle fenêtre contextuelle avec (nœud d'appairage 1) voulant envoyer les (Téléchargements) annuaire. Cliquez sur ajouter :

Maintenant, une nouvelle fenêtre contextuelle s'affichera sur (nœud d'appairage 2) , ici, vous pouvez modifier votre chemin si nécessaire, ainsi que régler toute autre option dans le volet supérieur. Pour l'instant, cliquez sur Enregistrer pour voir le processus de synchronisation commencer :

Maintenant, cela peut prendre environ une minute, mais les appareils devraient commencer à se synchroniser, exemple ci-dessous :

Félicitations, vous avez utilisé avec succès Syncthing pour synchroniser deux appareils ! Notez si vous voyez l'erreur suivante (Échec de la création du marqueur de dossier :mkdir .stfolder :système de fichiers en lecture seule) , consultez l'étape suivante pour corriger les autorisations. Une fois corrigé, redémarrez le service de synchronisation, et il devrait démarrer le processus.

Configurer les autorisations de synchronisation

Syncthing peut parfois rencontrer des problèmes d'envoi et de réception entre les nœuds distants. Avec les systèmes Linux, vous pouvez installer le package (setfacl) en saisissant la commande suivante :

sudo apt install acl

Exécutez ensuite la commande suivante avec votre nom d'utilisateur :

sudo setfacl -R -m u:username:rwx /folder/path/

Si vous rencontrez constamment des problèmes avec cela car les fichiers changent constamment, vous pouvez configurer une tâche cron comme ci-dessous :

sudo crontab -e

Ajoutez ensuite des autorisations de synchronisation toutes les 5 minutes :

*/5 * * * * sudo setfacl -R -m u:username:rwx /folder/path/ -n

La deuxième fonctionnalité consiste à définir (Ignorer les autorisations) dans (Avancé) options dans Syncthing WebUI. Cela peut également résoudre les problèmes, mais notez l'étape ci-dessus avec (setfacl) devra très probablement être fait en conjonction avec cette fonctionnalité.

Configurer les dossiers d'envoi uniquement et de réception uniquement

Une fonctionnalité intéressante de Syncthing est que vous pouvez spécifier les nœuds d'appairage à envoyer et à recevoir. Cependant, ils peuvent également envoyer uniquement et recevoir uniquement, ce qui vous offre une flexibilité ultime. Pour ce faire, ouvrez (Avancé) dans le panneau supérieur du dossier en cours de synchronisation et voir (Type de dossier) changer pour recevoir, envoyer ou les deux.

N'oubliez pas de cliquer sur Enregistrer.

Configurer Syncthing Ajuster les intervalles d'analyse

Si vous n'avez pas besoin de syncthing pour surveiller constamment les modifications et libérer le processeur, vous pouvez désactiver (Surveiller les modifications) dans la section (Avancé) lors de la modification du dossier de synchronisation entre les appareils.

De plus, par défaut, une nouvelle analyse complète est planifiée toutes les heures pour synchroniser les modifications toutes les heures et être ajustées plus ou moins longtemps.

Configurer Nginx en tant que proxy inverse pour Syncthing

Supposons que vous souhaitiez configurer Syncthing to Nginx en tant que proxy inverse pour accéder à votre serveur. Le guide vous montrera comment configurer à l'aide du port 80. Suivez l'exemple ci-dessous :

Tout d'abord, installez le Nginx PPA personnalisé d'Ondřej Surý, qui est mis à jour avec de meilleures fonctionnalités :

Stable :

sudo add-apt-repository ppa:ondrej/nginx && sudo apt update -y

Ligne principale :

sudo add-apt-repository ppa:ondrej/nginx-mainline && sudo apt update -y

Ensuite, installez Nginx :

sudo apt install nginx-core nginx-common nginx nginx-full -y

Vous devrez ensuite créer un fichier d'hôte virtuel. Pour cela, exécutez la commande suivante :

sudo nano /etc/nginx/sites-available/syncthing.conf

Ajoutez le code suivant dans le (syncthing.conf) fichier :

server {
  listen 80;
  server_name syncthing.example.com;

  access_log /var/log/nginx/syncthing.access.log;
  error_log /var/log/nginx/syncthing.error.log;
  location / {
    proxy_pass http://127.0.0.1:8384;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
  }
}

Pour enregistrer le fichier (CTRL+O) puis (CTRL+X) pour quitter. Ensuite, testez votre configuration Nginx en exécutant la commande :

sudo nginx -t

Si tout est correct, sans erreur, vous obtiendrez le résultat suivant :

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Pour terminer, rechargez ou redémarrez votre service Nginx :

sudo systemctl restart nginx

À partir de ce point, vous pouvez accéder au serveur Syncthing en utilisant l'URL http://syncthing.example.com.


Ubuntu
  1. Comment installer Docker sur Ubuntu 18.04

  2. Comment installer Apache sur Ubuntu 18.04

  3. Comment installer PHP 7.4 et 8.0 sur Ubuntu 18.04 ou 20.04

  4. Comment installer MariaDB 10.4 sur Ubuntu 18.04

  5. Comment installer et configurer Varnish sur Ubuntu 20.04 ?

Comment installer et configurer MRTG sur Ubuntu 18.04

Comment installer et utiliser Syncthing sur Ubuntu 20.04

Comment installer et configurer DNS sur Ubuntu

Comment installer et configurer Kubernetes sur Ubuntu

Comment installer Syncthing sur Ubuntu 20.04 LTS

Comment installer et configurer Memcached sur Ubuntu