Synchronisation de fichiers

Mom & Pop font de la synchro dans les nuages

Soir d’orage, sud du Nouveau Mexique.

Lorsque les documents administratif sont dématérialisés, les questions de stockage, d’accès et de synchronisation ne sont pas très loin. La confidentialité est aussi un aspect à considérer, certains documents sont “précieux”. Après diverses tentatives, voilà comment ça fonctionne ici !

Les besoins

Voilà le cahier des charges:

  • premier besoin: synchroniser des fichiers, c’est la requête de base.
  • les interfaces:
    • MacOS;
    • Linux;
    • interface web au travail parce que le laptop pro est verrouillé;
    • Android parce que c’est pratique.
  • pas d’administration: point crucial. Après avoir passé quelques années à administrer mon propre auto-hébergement d' OwnCloud, je ne veux plus le faire. La sécurité et l’administration est un métier, et ce n’est pas le mien. Suivre les mises à jours est important, mais j’ai cassé une ou deux fois la database en migrant de version, et la dernière casse fût fatale à cet auto-hébergement. Donc il faut une solution administrée, et je suis prêt à payer ce service.
  • multi-utilisateurs: il faut une solution ou chacun puisse se connecter au système indépendamment, et en même temps qu’un ensemble des fichiers soit commun (partage).
  • espace disque: en ce moment, il y a un peu moins de 1GO de documents administratifs.

On peut ajouter à ces requêtes nécessaires les petits plus qui facilitent la vie:

  • j’aimerai bien éviter DropBox, Google Drive, et autres entreprises US, et avoir un stockage en France, soumis à la législation française - ou européenne.
  • différentes sources: les documents peuvent être déjà numériques (par exemple les opérateur de téléphonie peuvent fournir les facture en PDF), ou alors des scans de documents papier. Il existe des solutions qui fournissent des “connecteurs”, c’est à dire un mécanisme pour récupérer directement les documents chez le fournisseur.
  • pour l’interface Android, une fonctionnalité pratique c’est de pouvoir synchroniser les photos, et donc les récupérer simplement sur l’ordinateur personnel. La séquence est:
    • prise de vue avec l’appareil, détection par le client de synchronisation;
    • upload de la photo sur le serveur;
    • quand l’ordinateur personnel est allumé, la synchronisation démarre et rapatrie la photo du serveur vers l’ordinateur;
    • et voilà, sans aucune manipulation incertaine de cable USB, ou sans avoir accepté que Google analyse vos photos pour les transférer, elles sont disponibles localement.

Les solutions

Les classiques

Côté logiciel (libre), je connais au moins trois solutions classiques: Seafile, ownCloud, Nextcloud.

Ces solutions fonctionnent avec d’un côté un serveur (pour la base de donnée, l’interface web) et de l’autre côté des clients (MacOS, Linux, Android …). J’ai déjà pratiqué ownCloud, donc je sais que ça répond au besoin - pourvu qu’on puisse le maintenir. Nextcloud est un fork de ownCloud, maintenu activement.

Donc ces solutions pourraient convenir, à condition de trouver un hébergeur administrateur.

De ce que je comprends, Seafile vise plutôt les structures (entreprises, associations). Je n’ai pas trouvé d’hébergeur qui me convienne.

Peer to peer

Syncthings est un outil de synchronisation de fichiers en peer-to-peer, donc il n’y a pas besoin de serveur central (contrairement aux autres solutions). Par contre il n’y a pas d’interface d’accès web, donc pas d’accès pour moi du travail. C’est rédhibitoire.

Cozy

Il y a aussi Cozy qui est un peu à part: le logiciel est open-source, mais il y a une offre d’hébergement d’instances Cozy. Concrètement, on peut profiter simplement des service de Cozy (le logiciel) via l’hébergement chez Cozy (l’entreprise). Cozy propose des connecteurs, c’est à dire l’automatisation de la récupération de documents auprès de certains fournisseurs: par exemple, la récupération des documents ameli, ou des factures de téléphonie.

Le point négatif qui m’empêche de continuer avec Cozy, c’est que le logiciel est mono-utilisateur. Nous avons essayé de créer deux comptes, et de partager nos documents administratifs, et ça c’est mal passé, un des deux comptes s’est retrouvé bloqué.

Cozy est très bien pour une utilisation individuelle, mais pas fait pour une utilisation familiale.

Les hébergeurs

En cherchant un peu, en plus de Cozy hébergé par Cozy, j’ai trouvé l’association Zaclys (qui fait partie des CHATONS). Zaclys propose de l’hébergement d’instances Nextcloud, soit en mutualisé soit sur instances dédiées.

En hébergement mutualisé, pour un don de 10€ à l’association, on a accès à 10GO de NextCloud (ou 5GO en option disque chiffré). En instance dédiée, il faut compter 220€/an, pour 50 GO, mais avec des performances et services en plus. Comme notre utilisation n’est pas intensive, l’instance dédiée ne me semble pas nécessaire.

La mise en place

Revue de spec !

Résumons: Nextcloud chez Zaclys répond à:

  • la synchronisation de fichiers
  • tous les clients possibles (web, Linux, MacOS, Android)
  • multi-utilisateur: il faut que chacun adhère à Zaclys
  • espace disque: voir la rubrique coût ci-dessous
  • c’est du logiciel libre, et les données sont hébergées en France
  • c’est possible de synchroniser les photos - il faut rajouter de l’espace disque - le client Nextcloud pour Android gère l’upload automatique des photos
  • pas de connecteur à la Cozy

Donc, il faut aussi garder Cozy, et l’utiliser comme source de données (et non comme service de synchronisation familial). Il se trouve que le client Cozy pour Android gère aussi l’upload automatique de photos.

Solution retenue et coût

Je garde Cozy pour les connecteurs et les photos. Avec une offre à 50 GO pour 3€ par mois, j’ai suffisamment de place pour les photos de mon appareil-photo-téléphone. Les documents récupérés par les connecteurs sont synchronisés vers un répertoire dédié sur mon ordinateur. De là, un petit cron se charge régulièrement de les recopier vers le répertoire de documents administratifs principal.

J’adhère chez Zaclys, et pour 10€ par an j’ai accès a 10 GO de Nextcloud. En fait plutôt 5GO, parce que je choisis le Nextcloud avec disque chiffré.

Synchronisation entre appareils via les clients Nextcloud:

Linux <====> serveur Zaclys <====> MacOs
                   ⋀
                   |
                   ⋁
                android

Automatisation de la récupération de documents dématérialisés: (via: le connecteur Cozy, puis le client Cozy, puis un cron)

Fournisseur ====> serveur Cozy <====> Linux/cozy ====> Linux/admin

Récupération des photos via les clients Cozy:

Android ====> serveur Cozy <====> Linux/photo

Installation de Nextclound (sur Ubuntu):

sudo add-apt-repository ppa:nextcloud-devs/client
sudo apt install nextcloud-client

Conclusion

En donnant un peu d’argent (10€/an) à une association, et en payant un forfait raisonnable (36€/an) à une entreprise (française), on peut trouver une solution à base de logiciels libres, avec des données stockées en France, par des structures qui promeuvent la décentralisation et la réappropriation des données.

Je ne suis pas sûr que conserver deux clients de synchronisation (Nextcloud pour les documents et Cozy pour les photos) sur un téléphone soit une solution pérenne. Donc éventuellement, la partie photo passera peut-être par Nextcloud/Zaclys.

Suivant
Précédent