
Envoi et réception sécurisés de fichiers par internet
Présentation du logiciel gratuit et open source Syncthing, permettant de synchroniser des fichiers de pair à pair et de ses utilisations possibles pour vidéastes et photographes.
Il est disponible sur Windows, Linux, macOS ainsi qu’Android à ce lien: https://syncthing.net/
Comme toujours, une liste de tous les autres articles de ce blog est disponible ICI.
Présentation de l’interface
Une fois installé et lancé, le logiciel va ouvrir une fenêtre de commande indiquant l’état des connexions ainsi que les paramètres de l’application. Si cette fenêtre de commande est fermée, syncthing s’arrêtera et la synchronisation s’arrêtera.
De plus, Syncthing va ouvrir un onglet dans le navigateur par défaut du système, pour présenter l’interface du logiciel. Cet onglet peut être fermé une fois la configuration terminée et le logiciel continuera d’opérer en fond.
Cet interface utilisateur peut être sécurisé par un nom d’utilisateur et un mot de passe qui sera demandé à chaque démarrage du logiciel, utile si l’ordinateur est partagé ou n’est pas sûr.
L’interface présente les différents dossiers partagés, les informations sur l’état local de la synchronisation et données réseau, ainsi que les informations sur les postes distants connectés.
Connexion à un autre poste
Partage des identifiants
La première étape est de connecter le poste à celui vers lequel on souhaite envoyer ou synchroniser des données.
Les deux postes doivent s’envoyer leurs identifiants et les enregistrer pour que la connexion soit possible.
Syncthing est un logiciel prévu pour une utilisation sécurisée, aucune données ne seront échangées sans que le poste cible n’ai accepté l’identifiant et le partage.
Cet identifiant peut être trouvé dans l’onglet Actions puis Afficher mon ID. Un code de type XXXXXXXX-XXXXXXXX-XXXXXXXX-XXXXXXXX-XXXXXXXX-XXXXXXXX-XXXXXXXX-XXXXXXXX sera affiché dans la fenêtre supérieure. C’est ce code qui doit être partagé entre les deux machines pour établir la connexion.
Le QRCode peut être utilisé à cet effet, tout comme envoyer le code par email, SMS ou tout autre moyen de partage.
Sur chaque poste : cliquer sur Ajouter un appareil. La fenêtre qui s’ouvre permet de renseigner l’identifiant partagé précédemment, ainsi qu’un surnom.
Le deuxième onglet « Partages » propose tous les dossiers disponibles au partage. Si aucun n’est disponible, il sera possible de les créer plus tard.
Le dernier onglet « Avancé » contient les informations de connexion entre les deux machines, comme les paramètres de connexion, les limites de débit ainsi qu’une option potentiellement utile si la machine sur laquelle les données sont synchronisés n’est pas sûre : « Retirer la confiance ».
Avec cette option, les données seront chiffrées et illisibles sur le poste distant sans que le mot de passe ne soit renseigné.
Paramètres de connexion
Les deux postes savent maintenant à quel identifiant se connecter, mais il faut encore qu’ils réussissent à communiquer que ce soit par le réseau local ou internet.
Par défaut, Syncthing propose plusieurs moyens automatiques de connexion. Ces options sont disponibles dans l’onglet Actions > Configuration > Connexions :
- Découverte locale : permet de connecter deux postes par réseau local
- Découverte globale : permet de connecter deux postes par internet. Pour se faire, les identifiants de chaque poste seront envoyés cryptés sur un serveur commun afin d’établir la connexion. A savoir que seules les données nécessaires à la connexion sont envoyées sur ce serveur. Plus d’informations dans la documentation de Syncthing ici : https://docs.syncthing.net/users/security.html
- Relayage possible : Si la connexion par découverte globale n’est pas possible, Syncthing tentera de passer par des relais secondaires. Attention, les débits seront très fortement dégradés par cette option.
- Activer la translation d’adresses (NAT) : Permet à Syncthing de se connecter plus facilement au travers de routeurs et pare-feu.
Il est possible de désactiver toutes ces options et de connecter directement les appareils par leurs adresses IP par exemple mais cela sera plus compliqué.
Si la connexion s’est bien effectuée, les deux postes devraient être visible dans la fenêtre Syncthing sous « Autres appareils » avec l’état de connexion « Connecté (Non utilisé) ».
Synchronisations de dossiers
Il reste maintenant à créer les dossiers qui seront partagés entre les deux machines.
Pour ce faire, cliquer sur « Ajouter un partage » : le nom, l’identifiant ainsi que le chemin local vers le dossier à partager sont à renseigner (ex : C:\Documents\DossierdePartage)
Dans l’onglet « Partages », il faut sélectionner avec quel poste partager le dossier.
L’onglet « Préservation des fichiers » règle la gestion des fichiers en cas de suppression ou des remplacement par une nouvelle version. L’option « Sans » n’opère aucune sauvegarde, l’option « Style poubelle » garde la version supprimée dans un sous-dossier.
L’option la plus intéressante dans une utilisation de synchronisation de fichiers et documents est « Versions échelonnées des fichiers ». C’est pour cette option que je préfère aujourd’hui utiliser Syncthing par rapport à FreeFileSync précédemment présenté dans ce blog (Article ici).
En effet, le logiciel gardera plusieurs versions des fichiers étalées dans le temps : « pendant la première heure une version est conservée toutes les 30 secondes. Le premier jour, une version par heure – des versions de la première heure sont alors progressivement effacées pour finir par n’en garder que la dernière. Pour les 30 jours passés, une version par jour – des versions horaires du premier jour sont alors progressivement effacées pour n’en garder qu’une par jour. Au-delà et jusqu’à la limite d’âge, une version est conservée par semaine – des versions journalières du premier mois sont alors progressivement effacées pour n’en garder qu’une. »
Ainsi, si l’on a malencontreusement effacé ou remplacé plusieurs fois un fichier, il sera possible de récupérer des versions antérieures inchangées.
Enfin, l’onglet « Avancé » se révèle utile pour sélectionner le Type de partage. Pour une synchronisation simple, l’option de base « Envoi & Réception » est idéale, mais comme détaillé ci-dessous, l’option « Envoyer seulement » et « Recevoir seulement » peuvent se révéler plus adaptées suivant les utilisations.
Une fois tous ces réglages opérés, cliquer sur « Enregistrer ». Sur l’autre poste, une notification apparaîtra demandant l’accord pour le partage du dossier.
Si accepté, les mêmes onglets de configuration seront ouverts et pour la configuration du partage sur l’autre machine. Chaque poste aura donc sa propre configuration.
Une fois terminée, le partage de fichiers sera effectif et la synchronisation se lancera. Syncthing étant un logiciel pair à pair, il faut bien sûr que les deux postes soient allumés et connecté au réseau au même moment. L’avantage de cette méthode est qu’aucun tiers ou plateforme Cloud ne détient une copie de vos données.
Envoi de rushes et fichiers volumineux sur un autre poste
Syncthing me permet aussi d’envoyer et recevoir des rushes de façon sécurisée et sans intermédiaires ni limites de données.
La configuration est identique au partage de dossier décrit ci-dessus à quelques détails près :
Dans l’onglet « Préservation des fichiers », je préfère utiliser l’option « Sans » pour ne pas me retrouver avec 10 versions d’un rush de 50Go.
Dans l’onglet « Avancé », je règle sur le poste qui envoi les données sur « Envoyer seulement » et le receveur « Recevoir seulement ». Ainsi, si la personne recevant les rushes supprime ou déplace les fichiers, ces changements ne seront pas synchronisés de mon côté, et m’éviteront de perdre aussi les rushes.
Seuls les changements du côté émetteur seront répercutés au receveur. Si le receveur déplace ou modifie des fichiers, Syncthing remarquera la différence et affichera le message « Ajouts locaux ». Ce message n’empêche en rien la synchronisation d’autres fichiers, mais ceux modifiés ou supprimés ne le seront plus. Une option « Annuler les modifications locales » resynchronisera tous les fichiers entre les deux postes, même ceux modifiés.
L’avantage de Syncthing dans cette utilisation est qu’il gère bien les pertes de connexion. En effet, si au milieu du transfert d’un rush de 50Go la connexion est perdue, à la reprise le logiciel ne repartira pas du début du fichier mais là où le transfert s’est arrêté.
Ce type de synchronisation peut être utilisé pour transférer les rushes directement du lieu de tournage vers le poste de post-production, ou pour partager entre différentes postes les différents fichiers de tournage.
Les données sont cryptées et donc sécurisées, tout en ne dépendant d’aucun service Cloud, abonnement ou acteur tiers.
Conclusion
Syncthing est capable de bien plus d’utilisations et de configurations, n’hésitez pas à partager votre utilisation du logiciel ci-dessous.