Comment puis-je installer Ubuntu crypté avec LUKS avec double démarrage?

Le disque d’installation Ubuntu 13.04 a une option pour installer Ubuntu chiffré à l’aide de LUKS. Cependant, il n’y a pas d’option permettant d’effectuer une installation chiffrée avec des partitions existantes pour un scénario à double démarrage.

Comment puis-je installer Ubuntu chiffré avec une autre partition du disque live?

Tout d’abord, si vous souhaitez installer Ubuntu chiffré sur un disque dur en remplaçant les partitions et les systèmes d’exploitation existants, vous pouvez le faire directement à partir du programme d’installation graphique. Ce processus manuel n’est requirejs que pour le double démarrage.

Cette réponse a été testée avec Ubuntu 13.04.

  1. Démarrez à partir d’un DVD live ou d’une clé USB Ubuntu, puis sélectionnez “Essayer Ubuntu”.

  2. Créez deux partitions à l’aide de GParted inclus dans le disque live. La première partition ne devrait pas être formatée et devrait être assez grande pour root et swap. Dans mon exemple, il s’agit de /dev/sda3 . La seconde partition doit faire plusieurs centaines de mégaoctets et être formatée en ext2 ou ext3, elle sera non chiffrée et montée sur /boot (dans mon exemple, il s’agit de /dev/sda4 ).

    Dans cette capture d’écran, j’ai une installation existante d’Ubuntu non chiffrée dans deux partitions: /dev/sda1 et /dev/sda5 , surligné dans le cercle à gauche. J’ai créé une partition non formatée dans /dev/sda3 et une partition ext3 dans /dev/sda4 , destinée à l’installation chiffrée d’Ubuntu, mise en évidence dans le cercle à droite:

    Capture d'écran GParted

  3. Créez un conteneur LUKS à l’aide de ces commandes. Remplacez /dev/sda3 par la partition non formatée créée précédemment et cryptcherries par le nom de votre choix.

     sudo cryptsetup luksFormat /dev/sda3 sudo cryptsetup luksOpen /dev/sda3 cryptcherries 
  4. Avertissement : Vous remarquerez que l’étape luksFormat terminée très rapidement, car elle n’efface pas de manière sécurisée le périphérique de bloc sous-jacent. À moins que vous ne fassiez que tester et que vous ne vous préoccupiez pas de la sécurité vis-à-vis de divers types d’attaques légistes, il est essentiel d’initialiser correctement le nouveau conteneur LUKS avant de créer des systèmes de fichiers. L’écriture de zéros dans le conteneur mappé entraîne l’écriture de données aléatoires fortes sur le périphérique de bloc sous-jacent. Cela peut prendre un certain temps, il est donc préférable d’utiliser la commande pv pour surveiller les progrès:

     sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) universe" sudo apt-get update sudo apt-get install -y pv sudo sh -c 'exec pv -tprebB 16m /dev/zero >"$1"' _ /dev/mapper/cryptcherries 

    ou, si vous effectuez une installation hors ligne et que vous ne pouvez pas obtenir facilement pv :

     sudo dd if=/dev/zero of=/dev/mapper/cryptcherries bs=16M 
  5. Dans le conteneur LUKS monté, créez un volume physique LVM, un groupe de volumes et deux volumes logiques. Le premier volume logique sera monté sur / , et le second sera utilisé en tant que swap. vgcherries est le nom du groupe de volumes, et lvcherriesroot et lvcherriesswap sont les noms des volumes logiques, vous pouvez choisir le vôtre.

     sudo pvcreate /dev/mapper/cryptcherries sudo vgcreate vgcherries /dev/mapper/cryptcherries sudo lvcreate -n lvcherriesroot -L 7.5g vgcherries sudo lvcreate -n lvcherriesswap -L 1g vgcherries 
  6. Créez des systèmes de fichiers pour les deux volumes logiques: (Vous pouvez également effectuer cette étape directement à partir du programme d’installation.)

     sudo mkfs.ext4 /dev/mapper/vgcherries-lvcherriesroot sudo mkswap /dev/mapper/vgcherries-lvcherriesswap 
  7. Sans redémarrer , installez Ubuntu à l’aide du programme d’installation graphique (le raccourci se trouve sur le bureau dans Xubuntu 18.04) en choisissant un partitionnement manuel. Assignez / à /dev/mapper/vgcherries-lvcherriesroot et /boot à la partition non chiffrée créée à l’étape 2 (dans cet exemple, /dev/sda4 ).

  8. Une fois l’installateur graphique terminé, sélectionnez “continuer à tester” et ouvrez un terminal.

  9. Recherchez l’UUID des partitions LUKS ( /dev/sda3 dans ce cas), vous en aurez besoin plus tard:

     $ sudo blkid /dev/sda3 /dev/sda3: UUID="8b80b3a7-6a33-4db3-87ce-7f126545c74af" TYPE="crypto_LUKS" 
  10. Montez les périphériques appropriés aux emplacements appropriés dans /mnt et chrootez dedans:

     sudo mount /dev/mapper/vgcherries-lvcherriesroot /mnt sudo mount /dev/sda4 /mnt/boot sudo mount --bind /dev /mnt/dev sudo chroot /mnt > mount -t proc proc /proc > mount -t sysfs sys /sys > mount -t devpts devpts /dev/pts 
  11. Créez un fichier nommé /etc/crypttab dans l’environnement chrooté pour contenir cette ligne, en remplaçant la valeur UUID par l’UUID de la partition LUKS et vgcherries par le nom du groupe de volumes:

     #     cryptcherries UUID=8b80b3a7-6a33-4db3-87ce-7f126545c74af none luks,retry=1,lvm=vgcherries 
  12. Exécutez la commande suivante dans l’environnement chrooté:

     update-initramfs -k all -c 
  13. Redémarrez et démarrez dans Ubuntu crypté. Vous devriez être invité à entrer un mot de passe.

  14. Vérifiez que vous utilisez la partition chiffrée pour / en exécutant mount :

     $ mount /dev/mapper/vgcherries-lvcherriesroot on / type ext4 (rw,errors=remount-ro) /dev/sda4 on /boot type ext3 (rw) # rest of output cut for brevity 
  15. Vérifiez que vous utilisez la partition swap chiffrée (et non des partitions swap non chiffrées d’autres installations) en exécutant cette commande:

     $ swapon -s Filename Type Size Used Priority /dev/mapper/vgcherries-lvcherriesswap partition 630780 0 -1 
  16. Vérifiez que vous pouvez démarrer en mode de récupération, vous ne voulez pas savoir plus tard, lors d’une urgence, que le mode de récupération ne fonctionne pas 🙂

  17. Installez les mises à jour susceptibles de reconstruire le disque mémoire et de mettre à jour la configuration de grub. Redémarrez et testez le mode normal et le mode de récupération.