Faire ses sauvegardes dans un storage boxe de chez Hetzner

Faire ses sauvegardes dans un storage boxe de chez Hetzner

En juillet j’ai fais un article sur la mise en place de sauvegardes via restic et restic server.

Les sauvegardes fonctionnaient à merveille. Le serveur était un petit dédié à base d’atom et 1To d’espace disque que je louais chez OneProvider. Il s’agissait en réalité d’une petite dedibox.

L’OS était donc nixos et cette semaine j’ai voulu la passer en version 22.11

La montée de version s’est bien passée, j’ai juste eu besoin de corriger la configuration de caddy. Suite à cette mise à jour majeur, j’ai fait un reboot et …. rien.

Le serveur n’a jamais redémarré, et rien via l’ipmi. Je contact le support et quelques heures après on m’annonce que le serveur est mort et qu’ils n’ont pas de machines de secours.

On me propose un remboursement, soit. Le plus étrange c’est que j’ai eu exactement la même chose à l’automne avec un autre petit serveur à 5€/mois.

C’est pas un drame, mais la pratique commerciale est un peu fumeuse. Le vrai problème c’est que j’avais plus de sauvegarde :/

Après une recherche, je découvre l’offre de Hetzner pour des storages boxes. Le tarif est top (compter 3.84€/mois) pour un espace de stockage de 1To.

Le processus de souscription est simple, accessible à tous et en 5 minutes l’espace de stockage est dispo. Il est accessible de plein des manières, comme du borg backup en version 1.2, du ssh et du webdav.

Pour le sftp (ou ssh) il faut changer le port par défaut, pour le port 23. La doc est très bien faite.

Que faire alors pour changer ma configuration et faire des sauvegardes, toujours via restic ?

La première étape c’est de copier votre clé ssh sur le storage boxe pour avoir une connexion sans mdp :

cat .ssh/id_ed25519.pub | ssh -p23 u3297xx@u3297xx.your-storagebox.de install-ssh-key

Puis dans le configuration.nix on ajoute la configuration de connexion pour le /etc/ssh/ssh_config

programs.ssh.extraConfig = "Host u3297xx.your-storagebox.de\n  Hostname u3297xx.your-storagebox.de\n  Port 23\n  user u3297xx\n  IdentityFile /home/alexandre/.ssh/id_ed25519";

Seconde étape la configuration de restic, ou l’on passe d’un localbackup à un remote, soit :

remotebackup = {
  initialize = true; # crée le repo s'il existe pas
  passwordFile = "/run/restic_pass"; # mot de passe pour accéder au repo, voir article précédent
  paths = [ "/var/lib/nextcloud/data/" "/var/backup/postgresql" ]; # ce que nous allons sauvegarder
  repository = "sftp:u329746@u329746.your-storagebox.de:/home/Nextcloud"; # ou se fait la sauvegarde, ici dans un dossier Nextcloud sur le storage boxe
  # Configuration de la périodicité des sauvegardes, cela cré un timer
  timerConfig = {
    OnCalendar = "02:05";
    RandomizedDelaySec = "5h";
  };
};

Un petit sudo nixos-rebuild switch après et la sauvegarde est de nouveau opérationnelle, enjoy :-)

Généré avec Hugo
Thème Stack conçu par Jimmy