Pourquoi automatiser vos sauvegardes avec Restic
Un VPS héberge souvent des données irremplaçables : bases de données, volumes Docker, fichiers de configuration. Restic répond à trois exigences clés d'une bonne stratégie : le chiffrement (AES-256, le dépôt est inutilisable sans le mot de passe), la déduplication (les blocs identiques ne sont stockés qu'une fois, ce qui réduit drastiquement le volume et le coût), et le support de backends variés (S3, Backblaze B2, SFTP, stockage local). Self-héberger Restic sur le VPS plutôt que de dépendre d'un service de backup managé vous donne le contrôle total du chiffrement : la clé reste chez vous, le fournisseur de stockage ne voit que des blobs opaques. C'est la base d'une stratégie 3-2-1 sérieuse.
Ce que Restic vous apporte
- Chiffrement AES-256 côté client : le backend de stockage ne voit que des données illisibles.
- Déduplication par blocs qui réduit fortement la taille et le coût des sauvegardes successives.
- Snapshots incrémentaux rapides : seuls les nouveaux blocs sont transférés à chaque run.
- Backends multiples (S3, Backblaze B2, SFTP, rest-server, local) sans changer de workflow.
- Restauration granulaire : un fichier, un dossier ou tout un snapshot via
restic restore. - Politique de rétention automatisée avec
forget --prune(garder N quotidiens, M hebdos...).
Prérequis pour ce déploiement
Restic est frugal : il fonctionne sur n'importe quel VPS, y compris 1 vCPU et 1 Go de RAM, la déduplication consommant un peu de mémoire proportionnellement à la taille du dépôt. Vous avez besoin du binaire restic (paquet de la distribution ou téléchargement direct), d'un backend de destination distant (un bucket S3-compatible chez un fournisseur, ou un autre serveur en SFTP) et de ses identifiants. Pas de Docker obligatoire ici : Restic est un outil en ligne de commande. Prévoyez cron ou un timer systemd pour l'automatisation, et un emplacement sûr hors du VPS pour conserver le mot de passe du dépôt.
Mettre en place des sauvegardes Restic automatisées
Installer Restic et préparer les variables d'environnement
Installez le binaire (
apt install resticpuisrestic self-update). Créez un fichier/root/.restic-envcontenantRESTIC_REPOSITORY,RESTIC_PASSWORDet les clés d'accès du backend (AWS_ACCESS_KEY_ID,AWS_SECRET_ACCESS_KEYpour un bucket S3-compatible). Restreignez ses droits avecchmod 600.Initialiser le dépôt chiffré
Chargez l'environnement puis exécutez
restic init. Cette commande crée la structure du dépôt et scelle le chiffrement avec votre mot de passe. Sauvegardez ce mot de passe ailleurs que sur le VPS : sans lui, aucune restauration n'est possible.Lancer une première sauvegarde
Sauvegardez vos répertoires critiques, par exemple
restic backup /etc /var/www /opt/docker-data. Pour une base de données, faites un dump dans un fichier puis incluez-le, ou pipez le dump dansrestic backup --stdin.Définir une politique de rétention
Évitez l'accumulation infinie avec
restic forget --keep-daily 7 --keep-weekly 4 --keep-monthly 6 --prune. La passe--prunesupprime physiquement les blocs devenus orphelins et libère l'espace dans le backend.Automatiser via cron ou systemd timer
Créez un script
backup.shqui source.restic-env, lancerestic backuppuisrestic forget --prune, et journalise le résultat. Planifiez-le quotidiennement, par exemple0 3 * * * /root/backup.shdans le crontab.Tester une restauration et vérifier l'intégrité
Une sauvegarde non testée est une illusion. Listez les snapshots avec
restic snapshots, restaurez vers un dossier temporaire (restic restore latest --target /tmp/test-restore) et lancezrestic checkpériodiquement pour valider l'intégrité du dépôt.
Protégez vos sauvegardes contre le ransomware en activant le mode "append-only" côté backend : déployez rest-server distant avec l'option --append-only, ou utilisez un bucket S3 avec une politique IAM interdisant les suppressions. Ainsi, même si votre VPS est compromis et que l'attaquant obtient les identifiants, il ne pourra ni effacer ni chiffrer vos snapshots existants. Combinez cela avec une exécution de restic forget --prune depuis une machine distincte disposant, elle, des droits de suppression.