From 45cc570941b25255b70d043e63a1814aec506283 Mon Sep 17 00:00:00 2001 From: Benjamin Renard Date: Tue, 28 Feb 2017 15:20:12 +0100 Subject: [PATCH] Add README.md --- README.md | 87 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..0624bfc --- /dev/null +++ b/README.md @@ -0,0 +1,87 @@ +Export des sauvegardes BackupPC sur disques externes USB chiffrés +================================================================= + +Installation +--------------- + +* Installer les dépendances : + * inoticoming + +* mettre les fichiers suivant dans /usr/local/sbin : + * backup-usb + * backuppcfs + * udev-bkp-usb + * run-bkp-usb + +* créer le fichier /etc/udev/rules.d/99-bkp-usb.rules : +``` +# A l'insertion du disque, lancement du script de backup +# Rechargement des regles udev manuellement si necessaire : udevadm control --reload-rules + +# Disk 1 +ACTION=="add", ENV{DEVTYPE}=="disk", ENV{ID_FS_UUID}=="41fc79d3-25fd-4424-9fc8-92479deead27", RUN+="/usr/local/sbin/udev-bkp-usb" +``` + +* lancer la commande : udevadm control --reload-rules +* ajouter la ligne suivante dans le fichier /etc/rc.local : +``` +# Run backup on USB device detection (trigger by udev rule) +inoticoming --logfile /var/log/bkp-usb.log /var/run/ --stderr-to-log --stdout-to-log --regex '^bkp-usb-detected$' /usr/local/sbin/run-bkp-usb {} \; +``` +* lancer manuellement la commande inoticoming (ou rebooter) + +Création du mot de passe de et la clé LUKS +------------------------------------------ +``` +pwgen -1 -y 40 > /root/.luks.pwd +dd if=/dev/urandom of=/root/.luks.key bs=1024 count=4 +``` + +Creation d'un disque USB +------------------------ + +- brancher le disque sur le serveur puis se connecter en tant que root au serveur +- détecter le nom qu'a pris le disque (en regardant le résultat de la commande *dmesg* par exemple), par exemple */dev/sdg* +- formater le disque : +``` +cryptsetup -q --use-urandom luksFormat /dev/sdg /root/.luks.pwd +cryptsetup luksAddKey /dev/sdg /root/.luks.key --key-file /root/.luks.pwd +``` +- "Ouvrir" le disque chiffré : + +``` +cryptsetup luksOpen /dev/sdg bkp-usb --key-file /root/.luks.key +``` + +- Formater le disque chiffré en ext4 : +``` +mkfs.ext4 /dev/mapper/bkp-usb +tune2fs -i0 -c0 -m0 /dev/mapper/bkp-usb +``` +- Fermer le disque chiffré : +``` +cryptsetup close bkp-usb +``` +- Récupérer l'identifiant UUID du disque : +``` +udevadm info -q all /dev/sdg|grep 'ID_FS_UUID=' +``` +Exemple : +``` +root@bkphost:~# udevadm info -q all /dev/sdg|grep 'ID_FS_UUID=' +E: ID_FS_UUID=41fc79d3-25fd-4424-9fc8-92479deead27 +``` + +- Ajouter l'exécution automatique de l'export des backups pour ce disque +dans le fichier le règle udev */etc/udev/rules.d/99-bkp-usb.rules* : +``` +# Disk X +ACTION=="add", ENV{DEVTYPE}=="disk", +ENV{ID_FS_UUID}=="41fc79d3-25fd-4424-9fc8-92479deead27", +RUN+="/usr/local/sbin/udev-bkp-usb" +``` +- Recharger les règles UDEV : +``` +udevadm control --reload-rules +``` +- Débrancher puis re-brancher le disque une première fois pour vérifier qu'il est bien détecter et que le premier export (long) soit lancé.