Raid1 logiciel, montage dans /home, chiffrement

Demandez et postez vos petites astuces, répertoire des tutoriels et astuces
Répondre
EG2
Messages : 20
Enregistré le : mar. 6 mars 2018 20:00

Raid1 logiciel, montage dans /home, chiffrement

Message par EG2 » mar. 13 mars 2018 19:22

Bonjour à tous

Je suis un aspirateur multimédia, du coup, je stocke énormément sur mon PC et la peur du défaut de disque hante mes nuits :D
Il me fallait une solution à ce problème et Linux en est une.

Je ne suis pas informaticien, ni spécialiste de Linux, ce tutoriel n'apprendra rien à ceux qui savent ;)

Mais pour les bleus et les nouveaux sur Mint, j'ai essayé d'être le plus complet possible !
Ce post est long, mais en suivant point après point, vous n'aurez aucun mal à faire la même chose.
Ne soyez pas effrayé par les lignes de commandes, ça marche très bien quand on les a comprises ;)

Ce post vous guidera pour obtenir un raid1 logiciel qui vous permettra de limiter la perte de données en cas de panne d'un disque dur contenant vos données personnelles.
En plus, vous pourrez aussi chiffrer vos données pour éviter qu'elles ne tombent dans de mauvaises mains en cas de vol de votre matériel.

Le raid1 logiciel permet de créer un volume virtuel qui sera écrit sur plusieurs disques.
Chaque disque sera la copie conforme de ses voisins, mais !
Le raid logiciel ne vous prémunit pas contre tous les risques...
Une surtension et tout peut griller dans votre PC.
Je sauvegarde donc régulièrement mes données sur d'autres disques qui sortent de la tour une fois l'opération terminée.
Dans mon cas, ces supports sont eux aussi chiffrés ;)
N'attendez pas non plus la mort d'un de vos disques.
Quand les données SMART s’affolent : changer le disque incriminé sans attendre !
La récupération des données sera nettement facilitée, et sans perte de temps (processus en arrière plan)

Pour le chiffrement des données, comme précisé dans tous les tutos traitant de la sécurité informatique, rien n'est infaillible !
Toutefois, je pense qu'une petite frappe aura bien du mal à venir à bout de tout ça et préférera passer son chemin et tout reformater.
Du coup, il ne pourra pas utiliser vos données pour voler votre identité ou vous faire chanter.

J'ai testé la méthode sur 2 PC différents

Matériel : 2 PC-desktop
  • un relativement vieux : AMD 64X2 4000+, 2Go de Ram
    1 Hdd 500Go PATA, 2x500Go en SATA pour le raid
  • une config plus récente : Intel Core i3-7100, 8Go de Ram
    1 SSD de 60Go, un hdd de 250Go sata et 2x4To sata pour le raid
  • Un minimum de 3 disques facilite clairement la manœuvre.
    Un petit Hdd/Ssd, pour le / (dossier racine) et le /home, ne coûte pas bien cher au final :D
Système :
  • Mint 18.3 64bits Cinnamon noyau 4.13 ou 4.10
Applications :
  • xed : l'éditeur de texte (installé d'office)
  • apt-get : L'installateur de logiciel (installé d'office)
  • gdisk : l'outil de formatage de disque (installé d'office)
  • mdadm : pour le raid logiciel
  • pam-mount : pour le déverrouillage automatique des volumes chiffrés
Pour faciliter la lecture, le tutoriel est scindé en 6 étapes

Index (cliquez sur le nom du chapitre pour y accéder) Pour rendre à César ce qui est à César, et parce que la lecture de ces tutos est une mine d'informations bien utiles, je vous recommande chaudement de prendre connaissance de ces deux tutos offerts par nos cousins Ubunteros ;)
https://doc.ubuntu-fr.org/raid_logiciel" onclick="window.open(this.href);return false;
https://doc.ubuntu-fr.org/tutoriel/chiffrer_son_disque" onclick="window.open(this.href);return false;

Merci à Débitant pour son aide à la création de ce tuto :)
Modifié en dernier par EG2 le mar. 13 mars 2018 20:02, modifié 2 fois.
PC desktop, Mint 18.3 64bits Cinnamon
Intel Core i3 7100, CM : Asus Prime B250M-A, 2*4Go DDR4 Corsair Vengeance LPX, SSD Corsair LS Force 60Go, Seagate Barracuda 250Go, 2x WD Blue 4To

EG2
Messages : 20
Enregistré le : mar. 6 mars 2018 20:00

Raid1 logiciel, montage dans /home, chiffrement

Message par EG2 » mar. 13 mars 2018 19:25

[centrer]L'installation en mode graphique[/centrer]


L'installation du système se fait sans intervention particulière

Simplement, au moment de choisir le partitionnement, cliquez sur "autre chose"
Raid1_2-1.png
Sur votre disque "système", partitionnez comme suit :
  • / sur une partition du disque, ou d'un des disques qui ne serviront pas au raid
  • /home sur une autre partition de ce même disque ou d'un autre
  • le swap
Laissez vos disques pour le Raid tranquille à ce moment là, ne les formatez pas, ne les montez pas, on y reviendra plus tard.

Exemple :
Raid1_2-2.png
Ensuite, vous allez devoir confirmer la disposition de votre clavier
Vérifiez bien que Mint a fait le bon choix pour vous !
Raid1_2-3.png
Pensez à essayer votre clavier en bas de cette fenêtre, pour être sur de taper le bon mot de passe de session, le bon nom d'utilisateur

Ensuite, on passe à la dernière étape de l'installation.

Mint chiffre le /home avec ecryptfs.

Si vous souhaitez chiffrer votre répertoire /home, il vous suffit de cocher la case correspondante lors du choix de votre nom d'utilisateur et de votre mot de passe.
Raid1_2-4.png
Ce mot de passe sera le même qui déverrouillera votre raid, il devra donc être suffisamment long et complexe (chiffres, lettres majuscules et minuscules, caractères spéciaux) pour ne pas être trouvé trop facilement.
Ne cochez pas la case "connexion automatique" tout l’intérêt de la manœuvre serait alors perdu.

Une fois l'installation finie, redémarrez votre système, on passe alors à la création du raid1 logiciel à proprement parlé

Retour index
PC desktop, Mint 18.3 64bits Cinnamon
Intel Core i3 7100, CM : Asus Prime B250M-A, 2*4Go DDR4 Corsair Vengeance LPX, SSD Corsair LS Force 60Go, Seagate Barracuda 250Go, 2x WD Blue 4To

EG2
Messages : 20
Enregistré le : mar. 6 mars 2018 20:00

Raid1 logiciel, montage dans /home, chiffrement

Message par EG2 » mar. 13 mars 2018 19:27

[centrer]Création du Raid1 logiciel[/centrer]
  1. Il vous faut le logiciel mdadm.
    • Dans un terminal, entrez :

      Code : Tout sélectionner

      sudo apt-get install mdadm
      Cette commande appelle apt-get en mode super utilisateur (sudo) et donne l'ordre d'installer (install) le logiciel mdadm
      Raid1_3-1.png
    • Recherche du nom des disques qui seront dans le raid.
      • Pour cela j'utilise "Disque"
        Raid1_3-2.png
        Cliquez (partie gauche) (3) sur les disques du raid
        Raid1_3-3.png
        Sur la ligne "Périphérique" (4) de chacun des DD , vous trouverez l'information "/dev/sdX" (X varie en fonction de votre configuration)
        Retenez les, vous en aurez besoin pour ce qui suit
    • Formatez les disques un par un avec gdisk
      • Code : Tout sélectionner

        sudo gdisk /dev/sdX
        remplacer "X" par les lettres relevées sur "disque"

        Une invite apparaît alors et attend vos ordres
        Raid1_3-4.png
        1. Tapez n pour créer une nouvelle partition
        2. à "partition number", tapez 1, c'est le numéro que portera cette partition
        3. à "First cylinder" et "Last Cylinder", laissez les valeurs par défaut et validez (touche Entrée) votre partition couvrira tout le disque.
        4. La ligne suivante vous permettra de changer le type de partition, tapez t pour changer le type puis fd00 pour un système Linux Raid
        5. Validez les modifications en tapant w, votre partition sera formatée et occupera tout le disque
        6. Validez par "Y"
        7. Répétez la procédure pour le deuxième disque
    • Construction du volume RAID
      • Code : Tout sélectionner

        sudo mdadm --create /dev/md0 --level=1 --assume-clean --raid-devices=2 /dev/sdX1 /dev/sdY1 
        • sudo : Cette ligne appelle mdadm en mode super utilisateur
        • --create /dev/md0 : Elle crée une grappe raid qui s'appellera /dev/md0
        • level=1 : Un raid1
        • --assume-clean : Précise que les partitions sont bien vides
        • raid-devices=2 : Qu'il y 2 disques dans la grappe
        • /dev/sdX1 /dev/sdY1 :Le chemin vers les partitions utilisées, X et Y étant les lettres correspondant à chaque volume et 1 le numéro des partitions se trouvant dessus, si vous avez plus de 2 disques pour le raid, vous l'indiquerez à la suite de /dev/sdY1 avec les identifiants qui correspondent
        Ensuite, la commande :

        Code : Tout sélectionner

        sudo mdadm --monitor --daemonise /dev/md0
        Vous permettra d'être averti en cas de défaillance de votre raid

        Vérifiez que tout est OK en entrant cette commande

        Code : Tout sélectionner

        sudo mdadm --detail /dev/md0
        Vous devriez avoir ces réponses en retour. "user" sera remplacé par votre nom d'utilisateur
        Raid1_3-5.png
        Redémarrez votre ordinateur, et vérifiez à nouveau
        Il y a de fortes chances que votre Raid soit bancal... Et porte le nom de /dev/md127 (c'est un bug connu)
        Vérifiez cela dans l'utilitaire "disques" avant de poursuivre !
        Raid1_3-6.png
        Si c'est le cas :

        Entrez dans un terminal la commande :

        Code : Tout sélectionner

        sudo mdadm -Es
        Vous aurez en retour ceci :

        Code : Tout sélectionner

        ARRAY /dev/md/0  metadata=1.2 UUID="UUID de la grappe raid" name=$USER-PC:0
        l'UUID d'un volume est son code unique d'identification.

        Récupérez l'UUID de votre grappe Raid et ouvrez mdadm.conf

        Code : Tout sélectionner

        sudo xed /etc/mdadm/mdadm.conf
        Un fichier s'ouvre, à la fin de ce dernier, rajoutez la ligne :

        Code : Tout sélectionner

        ARRAY /dev/md0 level=raid1 metadata=1.2 num-devices=2 UUID=UUID de votre volume RAID
        Raid1_3-7.png
        Sauvegardez le document

        Exécutez la commande

        Code : Tout sélectionner

        sudo update-initramfs -u
        Cette commande mettra à jour la procédure qui se lance au démarrage de votre système (initramfs), pour tout mettre en route comme il faut
Votre raid est créé, il faut ensuite le monter

Retour index
PC desktop, Mint 18.3 64bits Cinnamon
Intel Core i3 7100, CM : Asus Prime B250M-A, 2*4Go DDR4 Corsair Vengeance LPX, SSD Corsair LS Force 60Go, Seagate Barracuda 250Go, 2x WD Blue 4To

EG2
Messages : 20
Enregistré le : mar. 6 mars 2018 20:00

Re: Raid1 logiciel, montage dans /home, chiffrement

Message par EG2 » mar. 13 mars 2018 19:34

[centrer]Le Formatage en ext4, sans chiffrement[/centrer]

Il ne vous reste qu'à formater le raid et lui donner un point de montage.
Vous pourrez ensuite passer à l'étape finale : le "faire apparaitre" dans votre /home

Précision : Dans le texte qui suit, toutes les valeurs en majuscules commençant par $ devront être remplacées par vos valeurs personnelles ;)
$USER est votre nom d'utilisateur
$POINT-DE-MONTAGE est le dossier dans lequel vous trouverez votre grappe RAID


Pour cela :

Code : Tout sélectionner

sudo mkfs.ext4 /dev/md0
Cette commande formate votre grappe raid en utilisant le système de fichier ext4

Puis, créez un point de montage avec la commande suivante :

Code : Tout sélectionner

sudo mkdir /$POINT-DE-MONTAGE
C'est ici que vous trouverez votre grappe raid
Le montage dans le /home se fera plus tard.

vous n'aurez pas les droits sur ce dossier, vous l'avez créé en super utilisateur

Pour corriger :

Code : Tout sélectionner

sudo chown $USER /raid
Raid1_4-1.png
Raid1_4-1.png (10.12 Kio) Vu 234 fois
Il faudra, pour terminer, indiquer au système de monter ce volume au démarrage :

Code : Tout sélectionner

sudo xed /etc/fstab
Un fichier s'ouvre, fstab, il gère les points de montage des partitions de votre système.

en fin de celui ci, rajoutez la ligne :

Code : Tout sélectionner

/dev/md0  /$POINT-DE-MONTAGE   ext4    defaults    0   2
à la place de "/dev/md0" vous pouvez utiliser l'UUID de votre grappe

dans ce cas :

Code : Tout sélectionner

UUID=$UUID de votre volume    /$POINT-DE-MONTAGE   ext4    defaults    0   2
Raid1_4-2.png
Enregistrez le fichier et redémarrez.
votre raid est monté dans /$POINT-DE-MONTAGE maintenant ;)

Retour index
PC desktop, Mint 18.3 64bits Cinnamon
Intel Core i3 7100, CM : Asus Prime B250M-A, 2*4Go DDR4 Corsair Vengeance LPX, SSD Corsair LS Force 60Go, Seagate Barracuda 250Go, 2x WD Blue 4To

EG2
Messages : 20
Enregistré le : mar. 6 mars 2018 20:00

Re: Raid1 logiciel, montage dans /home, chiffrement

Message par EG2 » mar. 13 mars 2018 19:36

[centrer]Le chiffrement du Raid1[/centrer]

Précision : Dans le texte qui suit, toutes les valeurs en majuscules commençant par $ devront être remplacées par vos valeurs personnelles ;)
$USER est votre nom d'utilisateur
$POINT-DE-MONTAGE est le dossier dans lequel vous trouverez votre grappe RAID




Pour le formatage, j'ai préféré aller au plus simple et je suis passé par l'utilitaire "Disques"
  1. Selectionnez votre grappe raid dans l'utilitaire (toujours /dev/md0)
  2. Cliquez sur l'icone représentant des engrenages ou sur Maj+Ctrl+F
  3. Selectionnez alors le format Luks+Ext4
  4. Renseignez un nom pour votre volume,
  5. la phrase de passe qui doit être le mot de passe de la session
  6. validez
Raid1_5-1.png
Pour le montage automatique à l'ouverture de session, il vous faudra un petit logiciel en plus : pam-mount

Commande

Code : Tout sélectionner

sudo apt-get install libpam-mount
Puis, Modifiez le contenu du fichier /etc/security/pam_mount.conf.xml

Code : Tout sélectionner

sudo xed /etc/security/pam_mount.conf.xml
Un document s'ouvre, juste au début de ce dernier, sous la balise <pam_mount> ajoutez :

Code : Tout sélectionner

<volume user="$USER" mountpoint="/$POINT-DE-MONTAGE" path="/dev/md0" fstype="crypt" />
Raid1_5-2.png
N'oubliez pas de créer le point de montage !

Code : Tout sélectionner

sudo mkdir /$POINT-DE-MONTAGE
Et de vous l'approprier :

Code : Tout sélectionner

sudo chown $USER /raid
Là, logiquement, vous avez un Raid1 opérationnel, chiffré avec Luks et monté là où vous l'aurez spécifié.
Généralement, l'utilitaire utilise un chiffrement aes-xts-plain64 avec un hachage sha1
Si vous voulez le vérifier

Code : Tout sélectionner

sudo cryptsetup luksDump /dev/md0
Raid1_5-3.png
Retour index
PC desktop, Mint 18.3 64bits Cinnamon
Intel Core i3 7100, CM : Asus Prime B250M-A, 2*4Go DDR4 Corsair Vengeance LPX, SSD Corsair LS Force 60Go, Seagate Barracuda 250Go, 2x WD Blue 4To

EG2
Messages : 20
Enregistré le : mar. 6 mars 2018 20:00

Re: Raid1 logiciel, montage dans /home, chiffrement

Message par EG2 » mar. 13 mars 2018 19:47

[centrer]La mise en place d'un fonctionnement transparent pour l'utilisateur[/centrer]


Précision : Dans le texte qui suit, toutes les valeurs en majuscules commençant par $ devront être remplacées par vos valeurs personnelles ;)
$USER est votre nom d'utilisateur
$POINT-DE-MONTAGE est le dossier dans lequel vous trouverez votre grappe RAID



Vous allez pouvoir rendre simple l'utilisation de ce volume de stockage
  1. Pour ceux qui auraient choisi de ne pas chiffrer leur /home, la commande "bind" peut vous être utile
    • Editez fstab :

      Code : Tout sélectionner

      sudo xed /etc/fstab
      en fin de liste, rajoutez cette ligne :

      Code : Tout sélectionner

      /raid/$USER     /home/$USER     none    bind    0   0
      C'est la commande bind qu'on utilise ici
      Cette fonction permet de présenter le contenu d'un dossier dans un autre
      Le contenu de votre RAID sera présenté dans votre dossier personnel, l'accès à votre dossier personnel /home vous conduira dans votre grappe RAID.
      Raid1_6-1.png
      Avant de redémarrez, copiez le contenu de votre dossier /home/$USER dans /raid

      Code : Tout sélectionner

      sudo cp -a /home/$USER /raid
      cp est une des commandes de base de Linux, c'est l'ordre "copier"

      l'option -a va copier tout le contenu de votre votre /home sans modifier les droits des dossiers et des fichiers.

      Au redémarrage, vous devriez avoir un dossier personnel de la taille de votre raid
  2. Pour ceux qui ont choisi le chiffrement :
    • La commande bind ne fonctionnera pas, mais on m'a proposé une alternative satisfaisante :

      Modifiez les emplacements des dossiers de base de la session via la commande suivante

      Code : Tout sélectionner

      xed /home/$USER/.config/user-dirs.dirs
      Un fichier s'ouvre
      Modifiez toutes les lignes qui vous intéressent, pour chaque emplacement de votre dossier personnel
      Raid1_6-2.png
      Chaque ligne correspond à un dossier du /home/$USER
      Si vous laissez le chemin comme à l'origine "$HOME/Modèles" votre dossier "Modèles" restera sur votre partition /home d'origine
      Si en revanche, vous changez $HOME par "/$POINT-DE-MONTAGE", le système ira directement dans votre raid depuis certains logiciels, Firefox par exemple, ou depuis le menu.
      L’icône correspondante apparaîtra dans votre dossier /$POINT-DE-MONTAGE et disparaîtra dans votre /home

      Déplacez les dossiers du /home original dans votre /$POINT-DE-MONTAGE
      Ne déplacez que les dossiers dont vous avez modifié l'adresse !

      On termine en créant des liens symboliques entre /$POINT-DE-MONTAGE et /home en utilisant la commande suivante :

      Code : Tout sélectionner

      ln -sd /$POINT-DE-MONTAGE/Bureau /home/$USER/Bureau
      Raid1_6-3.png
      Ces liens symboliques peuvent aussi être utilisés pour les dossiers contenant les fichiers de configuration de vos applications.
      Pour déplacer vos mails et vos favoris internet sur votre raid, vous pouvez déplacer le dossier de l'application contenu dans /home/$USER vers /$POINT-DE-MONTAGE

      Par exemple, pour thunderbird, déplacer le dossier /home/$USER/.thunderbird dans /$POINT-DE-MONTAGE puis entrez cette commande dans le terminal

      Code : Tout sélectionner

      ln -sd /$POINT-DE-MONTAGE/.thunderbird /home/$USER/.thunderbird
Et voilà, c'est l'heure du thé logiquement


Retour index
Modifié en dernier par EG2 le mar. 13 mars 2018 20:12, modifié 1 fois.
PC desktop, Mint 18.3 64bits Cinnamon
Intel Core i3 7100, CM : Asus Prime B250M-A, 2*4Go DDR4 Corsair Vengeance LPX, SSD Corsair LS Force 60Go, Seagate Barracuda 250Go, 2x WD Blue 4To

EG2
Messages : 20
Enregistré le : mar. 6 mars 2018 20:00

Re: Raid1 logiciel, montage dans /home, chiffrement

Message par EG2 » mar. 13 mars 2018 19:51

[centrer]Que faire en cas de défaillance d'un disque[/centrer]


Pour les configurations anciennes, il peut être impératif d'aller dans le Bios pour activer l'acquisition des données SMART de vos disques durs.

Une fois ceci fait, vos disques sont sous monitoring, différents paramètres sont surveillés et l'alerte est donnée quand le disque fatigue
Vous pouvez lire les données SMART de chacun de vos disques dans "Disques"
Sur ma config de test, l'un de mes disques, fonctionnel en apparence, présente un défaut : de nombreux secteurs sont morts et ré-alloués
Il est en fin de vie

Dans ce cas, voici la procédure pour sortir du raid un disque fatigué et le remplacer

Précision : Remplacez X par vos valeurs
MdX est l'identifiant de votre grappe RAID (md0 si c'est la seule)
SdX correspond au disque dur remplacé


Attention ! Ne débranchez pas le disque comme un sauvage, suivez cette procédure :

Déclarez le disque HS :

Code : Tout sélectionner

sudo mdadm --manage /dev/mdX --set-faulty /dev/sdX1
Démontez le de la grappe :

Code : Tout sélectionner

sudo mdadm --manage /dev/mdX --remove /dev/sdX1
Raid1_7-1.png
Offrez vous un disque neuf de même taille
formatez le comme vu au dessus avec gdisk en Linux Raid (fd00)
Inutile d'aller plus loin, chiffré ou non, mdadm s'occupe de tout

Puis

Code : Tout sélectionner

sudo mdadm --manage /dev/mdX --add /dev/sdX1
Vous pouvez vérifier l'état du raid avec la commande --detail
Raid1_7-2.png
Comme visible sur l'image (ligne "Rebuild Status"), à l'ajout du nouveau disque, la reconstruction commence, il n'y a rien de plus à faire.
Vous pouvez entrer la commande à nouveau pour suivre l'évolution de la reconstruction, ou reprendre une vie normale :D


Retour index


Merci de m'avoir lu, et ne vous découragez pas ! :D
PC desktop, Mint 18.3 64bits Cinnamon
Intel Core i3 7100, CM : Asus Prime B250M-A, 2*4Go DDR4 Corsair Vengeance LPX, SSD Corsair LS Force 60Go, Seagate Barracuda 250Go, 2x WD Blue 4To

Répondre