mise au point atelier borg
This commit is contained in:
40
Readme.md
40
Readme.md
@@ -1,5 +1,16 @@
|
|||||||
# Sauvegardes
|
# 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
|
## Sauvegarde de base
|
||||||
|
|
||||||
http://localhost/doku.php?id=formation:opg:linux:sauvegardes#ops_1les_outils_-_tar
|
http://localhost/doku.php?id=formation:opg:linux:sauvegardes#ops_1les_outils_-_tar
|
||||||
@@ -31,26 +42,43 @@ En Binôme:
|
|||||||
|
|
||||||
### Mise en place des accès
|
### Mise en place des accès
|
||||||
|
|
||||||
* Créer un compte utilisateur borgXX (XX étant votre n° de machine)
|
* Créer un compte utilisateur borg
|
||||||
* Générer pour cet utilisateur une clé de type ed25519 nommée ~borgXX/.ssh/id_ed25519_borg, sans passphrase
|
* Générer pour root une clé de type ed25519 nommée ~root/.ssh/id_ed25519_borg, sans passphrase
|
||||||
* Autoriser borgXX a se connecter avec cette clé sur la machine du binôme
|
* 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: **
|
**Validation: **
|
||||||
|
|
||||||
La commande suivante doit vous donner un shell sur la machine de votre binôme:
|
La commande suivante doit vous donner un shell sur la machine de votre binôme:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
ssh -i ~borgXX/.ssh/id_ed25519_borg borg@machinebinome
|
sudo ssh -i ~root/.ssh/id_ed25519_borg borg@machinebinome
|
||||||
```
|
```
|
||||||
|
|
||||||
### 1ère sauvegarde distante
|
### 1ère sauvegarde distante
|
||||||
|
|
||||||
Une fois la connexion fonctionnelle, initialiser un dépôt borg/ssh dans ~borgXX de la machine du binôme et y faire une sauvegarde borg manuelle de votre répertoire personnel.
|
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 )
|
||||||
|
|
||||||
|
|
||||||
|
```bash
|
||||||
|
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
|
### Sécurisation
|
||||||
|
|
||||||
Enfin, rajouter les contraintes suivantes:
|
Enfin, rajouter les contraintes suivantes:
|
||||||
* borgXX ne peut se connecter que depuis la machine XX
|
* 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```
|
* la seule commande que borgXX peut exécuter via ssh est la commande ```borg serve --restrict-to-path /home/borg/backups```
|
||||||
|
|
||||||
### Automatisation
|
### Automatisation
|
||||||
|
|||||||
24
solution.md
Normal file
24
solution.md
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
# serveur reception 100.0.8.1
|
||||||
|
|
||||||
|
```bash
|
||||||
|
useradd -d /home/borg -m -s /bin/bash borg
|
||||||
|
echo borg:123Soleil | chpasswd
|
||||||
|
```
|
||||||
|
|
||||||
|
contenu de ~borg/.ssh/authorized_keys:
|
||||||
|
|
||||||
|
```txt
|
||||||
|
from="100.0.8.22",command="borg serve --restrict-to-path /home/borg/" ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICZH4GD9hPLi499S5GYnXLi5CsAFu19f79QaE3cB34n6 root@SUB2-22
|
||||||
|
```
|
||||||
|
|
||||||
|
# serveur emetteur 100.0.8.22
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo ssh-keygen -t ed25519 -f /root/.ssh/id_ed25519_borg
|
||||||
|
sudo ssh-copy-id -i /root/.ssh/id_ed25519_borg borg@100.0.8.1
|
||||||
|
sudo BORG_PASSPHRASE=123Soleil BORG_RSH='ssh -i ~root/.ssh/id_ed25519_borg' borg init --encryption repokey ssh://borg@100.0.8.1/home/borg/22
|
||||||
|
sudo BORG_PASSPHRASE=123Soleil BORG_RSH='ssh -i ~root/.ssh/id_ed25519_borg' borg create ssh://borg@100.0.8.1/home/borg/22::$(date -Imin)_home /home
|
||||||
|
sudo BORG_PASSPHRASE=123Soleil BORG_RSH='ssh -i ~root/.ssh/id_ed25519_borg' borg list ssh://borg@100.0.8.1/home/borg/22
|
||||||
|
sudo BORG_PASSPHRASE=123Soleil BORG_RSH='ssh -i ~root/.ssh/id_ed25519_borg' borg list ssh://borg@100.0.8.1/home/borg/22::$(date -Imin)_home /home
|
||||||
|
BORG_PASSPHRASE=123Soleil BORG_RSH='ssh -i ~root/.ssh/id_ed25519_borg' borg key export ssh://borg@100.0.8.1/home/borg/22
|
||||||
|
```
|
||||||
Reference in New Issue
Block a user