Outils pour utilisateurs

Outils du site


technique:sauvegardes:triangles

Unité de sauvegarde YunoHost

Matériel

Principe

On sauvegarde sur le disques dur (raid 1?) et on restore chaque sauvegarde régulièrement sur un LXD. On éteint le LXD et on passe au suivant. En cas de grosse panne, on fournit au client un bouton rouge où il peut appuyer pour lancer le LXD.

Les sauvegardes sont faites sur 2 unités de sauvegarde YunoHost.

Le dispositif peut fournir jusqu'à 7 LXD de 1Go. Donc on peut avoir 14 VM en panne qui enclenche le mode restauration (pour 20 clients à 200G)

Déploiement

On utilise pas l'iso YunoHost afin de pouvoir configurer le chiffrement.

Installation de debian

  1. Télécharger une image ISO debian
  2. Créer une clé USB bootable avec
  3. Planter la clé sur l'acute angle, brancher le réseau ethernet et le courant, démarrer et appuyer sur ESC pour entrer dans le BIOS
  4. Changer l'ordre d’exécution du boot menu et sauvegarder, on arrive sur le GRUB de la clé
  5. Choisir “Install”
  6. Choisir la langue, le pays et la configuration du clavier
  7. La machine a besoin d'un microcode non libre pour faire fonctionner le wifi, comme on ne souhaite pas s'en servir on ne l'installe pas
  8. Nom de machine: backup-X
  9. Domaine: reflexlibre.net
  10. Créer un mot de passe root
  11. Créer un utilisateur linux temporaire (qu'on supprimera plus tard pour en créer un via yunohost)
  12. Partitionnement:
    1. Choisir “Assisté - utiliser tout un disque avec LVM chiffré”
    2. Choisir “Carte MMC/SD n°2 62,5GB”
    3. Choisir “Tout dans une partition”
    4. Confirmer l'écriture
    5. Indiquer la phrase de passe pour le chiffrement
    6. Supprimer les partitions windows qui se trouve sur le SSD
  13. Choisir un miroir debian

Configurer le clavier en AZERTY

apt install keyboard-configuration console-setup

Et choisir Français

Si la machine ne réussi pas à obtenir d'IPs

dhclient ne peut pas récupérer l'ip du réseau car la machine se croit en 2112… On peut le vérifier avec

ip a
dhclient -v enp1s0

Si c'est le cas, on a un message “DHCPDISCOVER unable to set up timer: out of range”

Pour corriger ça:

date --set="20 SEP 2020 19:51:00"
dhclient -v enp1s0
apt install fake-hwclock

Puis tenter de redémarrer pour vérifier que le réseau ne disparaît pas au prochain redémarrage.

Configuration du RAID1 usb3 chiffré

apt install parted mdadm

for disk in $(/usr/sbin/fdisk -l | grep TiB | cut -d" " -f2 | sed "s/ ://g" 2> /dev/null) ;
do
  parted $disk mklabel gpt
  sed -e 's/\s*\([\+0-9a-zA-Z]*\).*/\1/' << EOF | fdisk $disk
n
1


t
29
w
p
q
EOF
done

mdadm --examine $(fdisk -l | grep "RAID Linux" | cut -d" " -f1)
mdadm --create /dev/md0 --level=mirror --raid-devices=2 $(fdisk -l | grep "RAID Linux" | cut -d" " -f1)

Attendre que la synchronisation soit faite à 100%

cryptsetup luksFormat /dev/md0
cryptsetup open /dev/md0 backup_crypt

Ajout d'une clé privée On installe haveged pour pallier au problème de génération de nombre aléatoire

apt install haveged
dd bs=512 count=4 if=/dev/random of=/root/backupKeyFile iflag=fullblock
chmod 600 /root/backupKeyFile
cryptsetup luksAddKey /dev/md0 /root/backupKeyFile

Configuration LVM

pvcreate /dev/mapper/backup_crypt
vgcreate backup-vg /dev/mapper/backup_crypt
lvcreate -n backup-lv -l953825 backup-vg
mkfs -t ext4 /dev/backup-vg/backup-lv

On déplace /home sur le raid chiffré

mv /home /home_old
mkdir /home
mount /dev/backup-vg/backup-lv /home
mv /home_old/* /home/

Pérénisation des configurations

mdadm --detail --scan --verbose | sudo tee -a /etc/mdadm/mdadm.conf
echo "/dev/mapper/backup--vg-backup--lv /home               ext4    errors=remount-ro 0       1" >> /etc/fstab

Pour obtenir les UUID on peut utiliser blkid (l'uuid de /dev/mmcblk1p3 pour la première ligne et celui de /dev/md0 pour la seconde)

echo "mmcblk1p3_crypt UUID=64b56580-3d7d-49c0-a1b6-0dea953e43be none luks" > /etc/crypttab
echo "backup_crypt UUID=1b28f682-eeb4-467a-ac64-ee9f27b0c6c8 /root/backupKeyFile luks,keyscript=decrypt_keyctl" >> /etc/crypttab
apt install keyutils
update-initramfs -u

On backup les headers ça peut servir en cas de soucis.

cryptsetup luksHeaderBackup /dev/md0 --header-backup-file /root/luks_header_md0.img

cryptsetup luksHeaderBackup /dev/mmcblk1p3 --header-backup-file /root/luks_header_mmcblk1p3.img

Installation de YunoHost par dessus

Maintenance

Réajouter un disque quand le raid est degraded

mdadm /dev/md0 -a /dev/sdd1
technique/sauvegardes/triangles.txt · Dernière modification: 2020/09/20 19:58 par ljf