Aller au contenu principal

Copie hors site avec rclone

Les sauvegardes sont copiées chaque nuit sur Google Drive via rclone, à travers un remote chiffré : Google ne voit que des noms et contenus illisibles.

gdrive → Google Drive du club (scope drive.file)
gdrive-crypt → chiffre tout ce qui est écrit dans gdrive:backups
├── openproject/
└── vaultwarden/

Configuration (une fois, en root)​

sudo apt install rclone
sudo rclone config

Remote gdrive

  • Storage : drive
  • client_id / client_secret : vide
  • scope : drive.file (rclone ne voit que ses propres fichiers)
  • Auto config : n (serveur sans navigateur) → lancer sur un PC la commande rclone authorize "drive" "..." affichée, se connecter avec le compte Google du club, recopier le jeton
  • Shared Drive : y si on utilise un drive partagé du club (recommandé)

Remote gdrive-crypt

  • Storage : crypt
  • remote : gdrive:backups
  • filename_encryption : standard, directory_name_encryption : true
  • password et salt : générés (g) — à noter hors ligne

Brancher les scripts​

sudo sed -i 's|^RCLONE_REMOTE=.*|RCLONE_REMOTE="gdrive-crypt:openproject"|' /usr/local/bin/backup_openproject.sh
sudo sed -i 's|^RCLONE_REMOTE=.*|RCLONE_REMOTE="gdrive-crypt:vaultwarden"|' /usr/local/bin/backup_vaultwarden.sh

Les scripts copient la sauvegarde du jour puis suppriment côté Drive ce qui dépasse la rétention.

Vérifier​

sudo rclone lsd gdrive-crypt:
sudo rclone ls gdrive-crypt:openproject | tail
sudo rclone ls gdrive-crypt:vaultwarden | tail

Récupérer une sauvegarde​

Sur n'importe quelle machine avec rclone et le même rclone.conf (ou les mêmes password/salt) :

rclone copy gdrive-crypt:openproject/AAAA-MM-JJ_HHMM ./restore-openproject/
rclone copy gdrive-crypt:vaultwarden/vaultwarden_AAAA-MM-JJ_HHMM.tar.gpg ./

Puis suivre la restauration de OpenProject ou Vaultwarden.

danger

Sans les mots de passe du remote gdrive-crypt, les fichiers sur Drive sont définitivement illisibles. Sauvegarder /root/.config/rclone/rclone.conf hors du serveur.