Files
tp_backup/Readme.md

2.7 KiB

Sauvegardes

Prérequis - connaissances nécessaires

expansion $(command)

variable d'environnement ( BORG_RSH )

option -i de ssh pour utiliser une clé non standard, ou config client ssh

principe de la planification de tâches avec cron / systemd

Sauvegarde de base

http://localhost/doku.php?id=formation:opg:linux:sauvegardes#ops_1les_outils_-_tar

cf TP/Cron

Sauvegarde distantes

Se mettre en binôme

Créer un compte de backup avec clé ssh sans mot de passe

Utiliser la directive allowusers pour permettre l'accès à la machine uniquement depuis la machine du/de la voisin⋅e

faire une backup distante dans /var/backup/remote/date du jour sur la machine distante

Sauvegardes chiffrées

Remplacer la commande tar mise au précédemment par borgbackup en vous aidant de la documentation suivante: https://www.linuxtricks.fr/wiki/borg-backup-gerer-ses-backups-sous-linux

Sauvegardes chiffrées, croisées et sécurisées

En Binôme:

(Utiliser les adresses ipv4 privées de vos machines pour les échanges)

Mise en place des accès

  • Créer un compte utilisateur borg
  • Générer pour root une clé de type ed25519 nommée ~root/.ssh/id_ed25519_borg, sans passphrase
  • Permettre à root@localhost de se connecter en borg sur la machine du binôme avec cette clé

vous utiliserez les adresses ip privées de vos machines

**Validation: **

La commande suivante doit vous donner un shell sur la machine de votre binôme:

sudo ssh -i ~root/.ssh/id_ed25519_borg borg@machinebinome 

1ère sauvegarde distante

Une fois la connexion fonctionnelle, initialiser un dépôt borg/ssh dans ~borg de la machine du binôme et y faire une sauvegarde borg manuelle de votre répertoire personnel.

Pour utiliser la clé distante, vous aurez besoin de définir la variable d'environnement BORG_RSH ( cf man borg )

BORG_RSH='ssh -i ~root/.ssh/id_ed25519_borg' borg init --encryption repokey ssh://borg@100.0.8.1/home/borg/XX

Faire ensuite une sauvegarde:

BORG_PASSPHRASE=123Soleil BORG_RSH='ssh -i ~root/.ssh/id_ed25519_borg' borg create ssh://borg@100.0.8.1/home/borg/XX::$(date -Imin)_home /home

borgbackup init -e repokey ssh://borg1@100.0.8.1/home/borg1/22

Sécurisation

Enfin, rajouter les contraintes suivantes:

  • borg ne peut se connecter que depuis la machine
  • la seule commande que borgXX peut exécuter via ssh est la commande borg serve --restrict-to-path /home/borg/backups

Automatisation

Pour terminer, mettez au point la tâche planifiée (avec systemd) permettant une exécution quotidienne, à 19h de cette sauvegarde borg.

Le nom des fichiers d'unité systemd sera borg.timer et borg.service