30 novembre 2019 · 3 min de lecture
La sauvegarde des données est essentielle pour pallier à un problème matériel (panne, destruction…) ou logiciel (rançongiciel…). Voici une solution sécurisée utilisant Restic et le stockage d’objets.
Restic est un logiciel de sauvegarde multi-plateformes (Windows, Mac, Linux…). Son code source est libre. Les principaux atouts de cet outil sont :
Pour l’installation, référez-vous à la documentation officielle de Restic.
Ou “Object storage” est un système d’enregistrement de fichiers sous forme d’objets. Un objet contient la donnée et des méta-données. Il est accessible via un identifiant unique. Les avantages sont :
Ce système est idéal pour la sauvegarde des données. Il est utilisé par Facebook pour le stockage des photos, ou par Dropbox pour le stockage des fichiers.
Récupérez tout d’abord auprès de votre hébergeur les éléments suivants :
https://s3.example.com
sauvegarde
Pour chiffrer les données avec Restic, il est nécessaire de créer un mot de passe fort. Sous Linux, cela peut se faire avec la commande suivante:
openssl rand -base64 24
Enregistrez-le dans votre gestionnaire de mots de passe préféré. Sans lui, vous ne pourrez plus accéder aux données !
Création du dépôt Restic:
export AWS_ACCESS_KEY_ID="votre_cle_api_publique"
export AWS_SECRET_ACCESS_KEY="votre_cle_api_privee"
restic -r s3:s3.example.com/sauvegarde init
Un mot de passe est demandé, entrez celui généré avec openssl
.
export AWS_ACCESS_KEY_ID="votre_cle_api_publique"
export AWS_SECRET_ACCESS_KEY="votre_cle_api_privee"
restic -r s3:s3.example.com/sauvegarde forget --keep-last 2 --prune
restic -r s3:s3.example.com/sauvegarde backup /home/toto --exclude={'/home/toto/.*','/home/toto/Téléchargements/'}
La ligne de commande avec l’option --prune
est donnée à titre d’exemple pour ne conserver que les deux dernières sauvegardes sur le serveur.
La seconde commande sauvegarde le dossier /home/toto
en excluant les fichiers cachés de Linux et le dossier Téléchargements
.
Pour information, la sauvegarde initiale de 9245 fichiers personnels, soit 5.15 Go a duré 2 minutes et 23 secondes sur le réseau fibré ! Les sauvegardes suivantes prendront encore moins de temps car seuls les fichiers nouveaux ou modifiés seront traités.
Avant même de récupérer toutes les données, Restic offre des possibilités intéressantes.
Listing du dernier “snapshot” :
restic -r s3:s3.example.com/sauvegarde ls -l latest
Pour lister les fichier d’un “snapshot” précédent, il faut d’abord obtenir son ID:
restic -r s3:s3.example.com/sauvegarde list snapshots
restic -r s3:s3.example.com/sauvegarde ls -l <ID_DU_SNAPSHOT>
La commande mount
va monter instantanément un dossier système avec tout le contenu de la sauvegarde. Pratique pour ne récupérer que quelques fichiers.
restic -r s3:s3.example.com/sauvegarde mount /home/toto/tmp
La sauvegarde est accessible dans le dossier /home/toto/tmp/snapshots/latest
.
restic -r s3:s3.example.com/sauvegarde restore latest --target /home/toto/tmp
La dernière sauvegarde est restaurée dans le dossier /home/toto/tmp
. Vous pouvez également indiquer l’ID d’un snapshot au lieu de latest
.
Restic est un outil très complet pour la sauvegarde et très rapide. En utilisant le cloud storage, l’avantage est que la sauvegarde est située dans un lieu géographique différent de vos données. Les commandes présentées dans cet article peuvent être automatisées dans un script et planifiées pour être exécutées périodiquement. Plongez-vous dans la documentation de Restic pour tirer pleinement profit de toutes les possibilités offertes.