CHATONS, partageons nos backups!

Bonjour,

Sur une idée cogitée avec les associations @Picasoft et @Elukerio , nous vous proposons de subvenir collectivement à un besoin exprimé par un grand nombre d’entre nous : la mise en place durable et responsable de backups.

Le principe est simple : chaque membre du collectif peut, s’il le souhaite et qu’il en a les moyens, proposer d’héberger des copies chiffrées des données d’autres membres du collectif ; à l’inverse, les membres ayant besoin de mettre en place une solution de sauvegarde pour leur infrastructure pourront l’exprimer ici.

De cette façon, chaque membre pourrait héberger solidairement un ou plusieurs membres du collectif sans pour autant accéder aux données des autres structures (grâce au chiffrement), ce qui permettrait aux membres d’avoir une ou plusieurs sauvegardes off-site, complètement décentralisées et hébergées dans une structure qui respecte leurs valeurs éthiques. Tout le monde y gagne :slight_smile:

Partie technique

Côté hébergeur

Plusieurs solutions sont possibles pour mettre à disposition un peu d’espace disque de manière sécurisée.

Une mise en place classique de ce système : création d’un utilisateur chroot dans son home avec un quota paramétré dans son dossier, puis configuration d’un serveur SSH afin qu’il puisse s’y connecter.

Nous opterons pour l’utilisation d’un conteneur (Docker) et d’un chroot pour isoler l’utilisateur ; enfin, nous utiliserons un fichier monté en tant que volume pour offrir un espace de stockage limité par la taille du fichier.

Les possibilités sont assez vastes, libre à vous de choisir celle qui vous arrange le mieux.

L’idée est qu’à la fin, l’utilisateur dispose d’un espace sécurisé (à l’aide d’une clé publique de préférence, sinon un mot de passe) et d’un quota pour y déplacer ses fichiers.

Quelques guides :

Côté hébergé

À partir de là, il suffit de mettre en place un script qui s’exécute régulièrement (bihebdomadairement, quotidiennement ?) avec une cron, qui se chargera de :

  1. Copier les dossiers qui nécessitent un backup
  2. Compresser ces dossiers (avec tar ou autre) et y ajouter une timestamp dans le nom du fichier compressé
  3. Chiffrer l’archive à l’aide de openssl, gpg ou d’autres outils. N’utilisez pas le chiffrement de 7-Zip, sa robustesse laisse à désirer.
  4. Déplacer le fichier chiffré dans un dossier réservé aux backups
  5. Utiliser un utilitaire comme rsync pour synchroniser ce dossier avec celui sur le serveur hébergeant les backups ; l’authentification peut se faire par clef privée de préférence.
  • Toujours garder si possible plusieurs sauvegardes un peu plus vieilles, par précaution.
  • Faire en sorte que le script supprime automatiquement les plus anciennes sauvegardes dès que le quota imposé par l’hébergeur est atteint.

Voilà, il existe très certainement des utilitaires pour simplifier ce processus.

Sociabilisons !

Nous vous invitons à exprimer en réponse à ce message votre volonté d’être hébergeur ou hébergé de sauvegardes CHATONS, afin que chaque membre puisse y trouver son compte.

Spécifiez le nom de votre CHATONS, l’espace disque que vous souhaitez mettre à disposition, le nombre de membres que vous accepteriez d’héberger, l’emplacement géographique de votre serveur et toute autre information potentiellement pertinente.

Nous aimerions tenir une liste à jour sur ce post des membres proposant un hébergement avec ceux qui en bénéficient.

Liste des hébergeurs et hébergés

Personne pour le moment.

Merci :slight_smile:

N’hésitez pas à suggérer des améliorations ou des remarques sur les procédures que nous vous proposons, ainsi qu’à dire ce que vous pensez de cette initiative.

~ N&B

6 Likes

J’ai pensé mon futur CHATON “computel” dans cette optique… proposer de l’espace de stockage (plutôt que des services classiques car il y a déjà de l’offre).
L’usage typique ce sont les backups mais aussi l’archivage de données pour des projets libres (j’ai démarré cette semaine un archivage des portails opendata français et j’assure des sauvegardes pour OSM France et Open Food Facts).

Je suis en auto-hébergement, tout est chez moi à part ma gateway pour la redondance du réseau (chez online). Je suis pas loin des 100To dispo.

Plus d’infos sur https://www.computel.fr/

1 Like

J’envisage aussi de partager mon système de sauvegarde (mais ça sera moins ambitieux)

ça sera à base de Pi Zéro et de gros DD… Le service aura une dispo théorique de ~95% (je suis autonome en électricité 100% solaire donc parfois : y’en a pas/peu…) et ne s’allume qu’au moment de la sauvegarde (bien sûr il peu être maintenu allumé pour un restauration)
bref c’est une solution soutenable écologiquement et du coup un peu contraignante… Mais s’il y a des candidats ça devrait être dispo dans quelques mois…

On est en train de réflechir aux solutions techniques chez Picasoft, mais c’est les vacances, puis ça va être la rentrée, donc ça va pas être prêt tout de suite. Mais dans l’idée on pense que c’est super intéressant et que ça vaudrait tout à fait le coup de le fare !

1 Like

iLinux vient de naitre officiellement, sur la carte radar de l’agenda du libre (GULL et petit Hébergeur).
Je trouve que l’idée est intéressante par contre , techniquement , je ne vois pas comment on peut partager nos backups via des pauvres liens ADLS/VDSL … et pour les plus chanceux Gigabit (mieux ceux qui ont le privilège d’avoir leur matos chez un gros hébergeur !) ?

Pour l’instant mon externalisation va se faire vers un autre batiment que celui ou est le backup principale

Avec des backups différentiels le besoin en bande passante se réduit énormément.
C’est quasi indispensable pour du backup distant.

2 Likes

Bonjour,
A Colibris, on serait intéressés pour héberger nos sauvegardes sur d’autres chatons et on peut trouver un peu de sous pour le faire financer.
Pour info, ca doit faire en tout un peu moins de 1to de données (différents sites publics et services libres), et pour l’instant on fait du borg avec journalisation (5 jours, 3 semaines, 2 mois, de mémoire).
Vous savez s’il est possible de “streamer” / “multiplexer” les copies de sauvegarde?
Ca prend déja un temps fou, alors s’il faut faire du multi-site, c’est pas évident… et faire une sauvegarde d’une sauvegarde, c’est peut etre une fausse bonne idée?
Un chaton serait intéressé?

J’utilise borg aussi pour faire des sauvegardes distantes, mais dans mes souvenirs, il faut que borg soit installé sur la machine locale et la machine distante. Dans mon cas, je suis administrateur des deux machines, donc il y a de problème de confiance, bien que les sauvegardes distantes soient chiffrées par une passphrase fourni par la machine locale. Savez-vous s’il serait aussi sécurisé de faire la même chose, sans être administrateur de la machine distante ?

Voilà ce que j’ai pu trouver sur la FAQ de BorgBackup à ce sujet :

When backing up to remote encrypted repos, is encryption done locally?

Yes, file and directory metadata and data is locally encrypted, before leaving the local machine. We do not mean the transport layer encryption by that, but the data/metadata itself. Transport layer encryption (e.g. when ssh is used as a transport) applies additionally.

When backing up to remote servers, do I have to trust the remote server?

Yes and No.

No, as far as data confidentiality is concerned - if you use encryption, all your files/dirs data and metadata are stored in their encrypted form into the repository.

Yes, as an attacker with access to the remote server could delete (or otherwise make unavailable) all your backups.

https://borgbackup.readthedocs.io/en/stable/faq.html

Également, sur la page d’accueil :

Off-site backups

Borg can store data on any remote host accessible over SSH. If Borg is installed on the remote host, big performance gains can be achieved compared to using a network filesystem (sshfs, nfs, …).

https://borgbackup.readthedocs.io/en/stable/index.html

Donc avec un sshfs, il ne devrait pas être nécessaire d’installer Borg Backup sur la machine distante.

Un tutoriel que j’ai trouvé dans mes recherches pour monter le sshfs et effectuer la sauvegarde : https://www.linuxschools.com/karoshi/documentation/wiki/index.php?title=Off-Site_Backup (attention, le dernier edit date d’un an, il existe peut-être une façon plus efficace de le faire aujourd’hui).

Merci pour vos réponses, je mets à jour la liste :slightly_smiling_face:

Edit: Ah, on dirait que je n’ai pas les permissions d’éditer le message, je suppose que c’est parce qu’il est trop vieux. :frowning:

~ Neil

Salut Neil,

https://wiki.ilinux.fr/doku.php?id=documentations:logiciels:gargantua&s[]=orion

Ici tu as les fonctions en bash pour faire le backup en mode pull via sshfs (on peut largement mieux faire , avec un snapshot à la source etc pour zéro downtime … mais j’ai pas eu le temps de retoucher le code : et je code mal, par contre je test quasi tout et commente à fonds!)

https://wiki.ilinux.fr/doku.php?id=documentations:logiciels:gargantua&s[]=orion#le_script_boite_à_outils

(fonction : function sauvegardeBorgBackupServeur () # sauvegarde serveur distant avec sshFS)

137 GO traité en 5 mn, très peu de modification (serveur nextcloud pas chargé du tout)

je vais zieuter ton lien, pour comparer.

1 Like

Je confirme que ce n’est pas nécessaire d’avoir borg sur la machine du chaton distant, un accès ssh suffit pour envoyer les données.

Autre découverte qui a l’air bien sympa : https://torsion.org/borgmatic/ et la doc qui va bien du superbe adminsys de framasoft, Luc aka framasky https://wiki.fiat-tux.fr/books/administration-systèmes/page/borgmatic

edit: sur la doc de framasky, ya un serveur de backup (ce qui est semble t’il plus propre), mais on peut aussi installer borg sur le serveur directement.

2 Likes

Oui c’est vrai, mais quand il faut restaurer des gros volumes dans l’urgence (c’est toujours urgent quand tu en es là…) et bien derrière une ADSL ça va pas vite à remonter… (c’est du vécu… :expressionless: )

1 Like

salut mrflos,

j’ai jamais compris l’intérêt de Borgmatic à part foutre dans un fichier la ligne de commande que l’on met à plat …
A la limite lui (j’ai pas testé, hein) :
https://cyborgbackup.readthedocs.io/en/latest/user/install.html#install
… qui met un GUI , ok mais Borgmatic. pff.

Ça… la restauration du backup distant c’est la dernière chance et heureusement on n’en arrive rarement jusque là.

Le backup distant peut aussi être géographiquement proche et une récup physique de disque toujours possible si ça prend moins de temps qu’un transfert. Avantage chatonien de ne pas être dans le “cloud” et que les contacts IRL sont possibles (et souhaitables).

1 Like

Pour moi qui ne suis pas admin sys de métier, je préfère paramétrer un fichier de conf que d’écrire mon script bash from scratch, c’est l’intérêt de Borgmatic : on arrive a faire la journalisation, le check des backups, les alertes mails, la sélection des dossiers, a partir d’un fichier pas trop complexe.

1 Like

À tous : juste une question d’ordre linguistique en passant. Peut-on traduire « back-up » en français dans tous les cas par « sauvegarde »

Dans tous les cas en rapport avec l’informatique?
Sinon ya aussi le sens I need backup => J'ai besoin de renforts / J'ai besoin de solution de secours

1 Like

Bonjour a tous,
Certains d’entre vous utilise Tahoe-lafs?

Je m’en sers pour du backup avec des amis ou connaissances:
https://tahoe-lafs.org/trac/tahoe-lafs

Ca permet d’avoir des backups avec une forte redondance tout en étant bien securisé

1 Like

J’avais travaillé dessus en 2009 lorsque que je concevais un système de backups pour une box façon la brique internet.

Mes tests étaient très peu concluants sur des restorations suite à un crash. Comprendre, j’ai corrompu un paquet de données sur des pertes d’un seul noeud malheureusement.

Réaction plus générale : les sauvegardes en 2020, c’est quand même bien plus équipé que rsync et openssl/openpgp à la main.

Pour ne citez qu’eux, restic et borg sont faits pour ça, et le font très très bien. Restic est probablement le plus largement déployé (et de plus en plus, puisqu’à la base d’autres systèmes dont Stash et Velero), même si possiblement plus lent et gourmant que Borg.

Dans tous les cas, côté backend, ce qui semble se dessiner chez la plupart des solutions, c’est une convergence lente vers du stockage compatible S3. Cela supporte les quotas au niveau applicatif nativement, ça se déploie, avec moulte implémentations supportant plus ou moins de redondances.

Dans tous les cas, très favorable à croiser les besoins, backuper entre nous : je t’offre de l’espace, tu m’offres de l’espace, etc. Quitte du coup à remplir plusieurs besoins (backends SFTP, backends S3). Pour ma part, j’ai un Minio avec quelques dizaines de To de libres, qui sert aux backups de TeDomum. Il est potentiellement mutualisable pour des volumes modérés en heures creuses (peu de bande passante).

Edit : désolé j’avais raté quelques posts donc pas vu que ça parlait déjà de borg. Je complète donc seulement avec restic, et les backends compatibles S3.

2 Likes