88 votes

Comment puis-je installer Ubuntu crypté avec LUKS en dual-boot ?

Le disque d'installation d'Ubuntu a une option pour installer Ubuntu crypté en utilisant LUKS. Cependant, il n'y a pas d'option pour effectuer une installation cryptée à côté des partitions existantes pour un scénario de double démarrage.

Comment puis-je installer Ubuntu crypté à côté d'une autre partition à partir du disque vivant ?

98voto

Flimm Points 36395

Tout d'abord, si vous souhaitez installer Ubuntu crypté sur un disque dur, en remplaçant toutes les partitions et systèmes d'exploitation existants, vous pouvez le faire directement à partir du programme d'installation graphique. Ce processus manuel n'est nécessaire 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 Ubuntu ou d'une clé USB, et sélectionnez "Try Ubuntu".

  2. Créez deux partitions en utilisant GParted inclus dans le disque vivant. La première partition doit être non formatée et doit être suffisamment grande pour la racine et le swap, dans mon exemple, c'est /dev/sda3 . La deuxième partition doit avoir une taille de 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, c'est /dev/sda4 ).

    Dans cette capture d'écran, j'ai une installation Ubuntu non cryptée existante sur deux partitions : /dev/sda1 y /dev/sda5 Dans le cercle de gauche. J'ai créé une partition non formatée dans le disque dur. /dev/sda3 et une partition ext3 dans /dev/sda4 destiné à l'installation cryptée d'Ubuntu, mis en évidence dans le cercle à droite :

    GParted screenshot

  3. Créez un conteneur LUKS en utilisant ces commandes. Remplacer /dev/sda3 avec la partition non formatée créée précédemment, et cryptcherries avec un nom de votre choix.

    sudo cryptsetup luksFormat /dev/sda3
    sudo cryptsetup luksOpen /dev/sda3 cryptcherries
  4. Avertissement : Vous remarquerez que le luksFormat se termine 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 soyez juste en train d'expérimenter et que vous ne vous souciiez pas de la sécurité contre divers types d'attaques légales, il est essentiel d'initialiser correctement le nouveau conteneur LUKS avant d'y créer des systèmes de fichiers. L'écriture de zéros dans le conteneur mappé entraînera l'écriture de données fortement aléatoires sur le périphérique bloc sous-jacent. Cette opération peut prendre un certain temps, il est donc préférable d'utiliser la commande pv pour suivre la progression :

    ### Only for older releases, e.g. not for 19.04, `pv` is not included in the repo must be added first
    # 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 facilement obtenir pv :

    sudo dd if=/dev/zero of=/dev/mapper/cryptcherries bs=16M
  5. À l'intérieur du conteneur LUKS monté, créez un volume physique LVM, un groupe de volumes et deux volumes logiques. Le premier volume logique sera monté à / et le second sera utilisé comme swap. vgcherries est le nom du groupe de volumes, et lvcherriesroot y 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émarrage installez Ubuntu en utilisant l'installateur graphique (le raccourci est sur le bureau dans Xubuntu 18.04), en choisissant le partitionnement manuel. Attribuez / a /dev/mapper/vgcherries-lvcherriesroot y /boot sur la partition non chiffrée créée à l'étape 2 (dans cet exemple, /dev/sda4 ).

  8. Une fois l'installation graphique terminée, sélectionnez "continuer le test" et ouvrez un terminal.

  9. Trouvez 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 dispositifs appropriés aux endroits appropriés dans /mnt et de s'y connecter :

    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 avec le nom du groupe de volumes :

    # <target name> <source device> <key file> <options>
    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 l'Ubuntu crypté. Un mot de passe devrait vous être demandé.

  14. Vérifiez que vous utilisez la partition cryptée pour / en courant 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 d'échange chiffrée (et non des partitions d'échange non chiffrées provenant 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 découvrir plus tard en cas d'urgence que le mode de récupération ne fonctionne pas :)

  17. Installez toutes les mises à jour, qui sont susceptibles de reconstruire le ramdisk et de mettre à jour la configuration Grub. Redémarrez et testez à la fois le mode normal et le mode de récupération.

11voto

Falieson Points 263

Il est possible de créer une configuration double-boot cryptée en utilisant uniquement les outils de l'interface graphique du LiveCD Ubuntu.

Conditions préalables

  • Une clé USB avec l'installateur Ubuntu 19.04.
  • Si vous avez une carte mère EFI, assurez-vous que le disque utilise la table de partition GUID (GPT). L'utilisation d'un disque MBR avec cette méthode semble échouer. Vous pouvez convertir un MBR en GPT avec les outils Linux ( gdisk ), mais vous devez d'abord faire une sauvegarde. Si vous convertissez la table de partition, vous devrez réparer le boot loader de Windows après.

Windows

  • Dans la barre de démarrage, tapez disk partition et sélectionnez la première option (ouverture du gestionnaire de partition de disque à partir des paramètres).

  • Réduisez votre partition primaire à la taille Ubuntu souhaitée (j'ai simplement utilisé la valeur par défaut, divisant mon disque de 500 Go en 240 Go pour le système d'exploitation Windows et 240 Go d'espace non alloué).

BIOS

  • Désactiver le démarrage sécurisé (si vous avez bitlocker vous devrez le renommer pour démarrer en toute sécurité dans Windows à chaque fois) - c'est très bien pour moi puisque Ubu est mon OS principal, j'utilise juste windoze pour les jeux.

LiveCD Ubuntu

Enfin - Démarrez la clé USB d'installation de 19.04.

  • Hit Enter sur l'option par défaut Installer Ubuntu opción.

  • Quand vous arrivez à l'écran qui dit Effacer tout le disque et comporte des cases à cocher, cliquez sur le bouton Autre chose (partitionnement manuel). Sinon, vous perdrez vos données Windows !

Une fois que le gestionnaire de partition de disque aura chargé votre disque, vous aurez un grand espace non alloué. Cliquez dessus et appuyez sur le bouton Ajouter pour créer des partitions.

  • D'abord, créez un disque dur de 500MB /boot partition (primaire, ext4).
  • Ensuite, avec le reste de l'espace, créez un volume crypté. Cela créera une partition LV unique. Modifiez-la pour qu'elle soit la racine sélectionnée / partition. En d'autres termes, appuyez sur le bouton "changer" sur /dev/mapper/sdaX_crypt et définir le point de montage à /
  • Le reste du processus d'installation se déroulera ensuite comme d'habitude.

Lorsque vous démarrez pour la première fois, connectez-vous, ouvrez un terminal, exécutez sudo apt-get update y sudo apt dist-upgrade redémarrez et reconnectez-vous.

Un fichier d'échange de 2 Go sera créé automatiquement. Si vous souhaitez en avoir un de 8 Go, lisez la page suivante cette réponse .

8voto

user Points 415

Tout d'abord, il convient d'expliquer pourquoi le chiffrement de la seule partition Linux n'est peut-être pas assez sûr pour vous :

  1. https://superuser.com/questions/1013944/encrypted-boot-in-a-luks-lvm-ubuntu-installation
  2. https://security.stackexchange.com/questions/166075/encrypting-the-boot-partition-in-a-linux-system-can-protect-from-an-evil-maid-a
  3. https://www.reddit.com/r/linux/comments/6e5qlz/benefits_of_encrypting_the_boot_partition/
  4. https://unix.stackexchange.com/questions/422860/why-should-we-encrypt-the-system-partition-and-not-only-home
  5. https://www.coolgeeks101.com/howto/infrastructure/full-disk-encryption-ubuntu-usb-detached-luks-header/
  6. https://superuser.com/questions/1324389/how-to-avoid-encrypted-boot-partition-password-prompt-in-lvm-arch-linux

Maintenant, j'ai suivi ce tutoriel :

  1. https://www.oxygenimpaired.com/multiple-linux-distro-installs-on-a-luks-encrypted-harddrive
  2. http://web.archive.org/web/20160402040105/http://www.oxygenimpaired.com/multiple-linux-distro-installs-on-a-luks-encrypted-harddrive

Sur cette réponse, je présente une installation pas à pas (avec des photos) de Linux. Mint 19.1 XFCE y Ubuntu 18.04.2 , tous deux entièrement cryptés sur un seul disque. J'ai d'abord installé Ubuntu 18.04.2 sur /dev/sda5 et je n'ai pas créé les partitions d'échange parce que Linux Mint 19.1 y Ubuntu 18.04.2 ne les utilisent pas, c'est-à-dire qu'ils utilisent des fichiers d'échange.

Ubuntu 18.04.2 Castor bionique

Tout d'abord, insérez le Ubuntu et redémarrez la machine dans le Ubuntu session en direct, puis, sélectionnez Try Ubuntu et ouvrir un terminal, puis

  1. sudo su -
  2. fdisk /dev/sda puis, créez les partitions suivantes
    • enter image description here
  3. cryptsetup luksFormat /dev/sda5
  4. cryptsetup luksOpen /dev/sda5 sda5_crypt
  5. pvcreate /dev/mapper/sda5_crypt
  6. vgcreate vgubuntu /dev/mapper/sda5_crypt
  7. lvcreate -L10G -n ubuntu_root vgubuntu
    • lvcreate -l 100%FREE -n ubuntu_root vgubuntu (facultatif, au lieu d'exécuter lvcreate -L10G -n ubuntu_root vgubuntu vous pouvez exécuter ceci lvcreate -l 100%FREE -n ubuntu_root vgubuntu pour utiliser tout l'espace libre de votre disque, au lieu de seulement 10 Go)
    • enter image description here
  8. Ne fermez pas le terminal, et ouvrez l'installateur de la distro, sélectionnez Autre chose et marquer les options suivantes
    • /dev/sda1 monté comme /boot partition avec ext2 format
    • /dev/mapper/vgubuntu-ubuntu_root monté comme / avec ext4 format.
    • /dev/sda comme boot loader installation
    • Ne marquez rien d'autre
    • enter image description here
    • enter image description here
  9. Sélectionnez Install Now après avoir sélectionné les options ci-dessus
  10. Ne redémarrez pas, cliquez sur Continuer à utiliser Linux et sélectionnez le terminal ouvert.
  11. mkdir /mnt/newroot
  12. mount /dev/mapper/vgubuntu-ubuntu_root /mnt/newroot
  13. mount -o bind /proc /mnt/newroot/proc
  14. mount -o bind /dev /mnt/newroot/dev
  15. mount -o bind /dev/pts /mnt/newroot/dev/pts
  16. mount -o bind /sys /mnt/newroot/sys
  17. cd /mnt/newroot
  18. chroot /mnt/newroot
  19. mount /dev/sda1 /boot
  20. blkid /dev/sda5 (copier l'UUID sans les guillemets et l'utiliser à l'étape suivante)
  21. echo sda5_crypt UUID=5f22073b-b4ab-4a95-85bb-130c9d3b24e4 none luks > /etc/crypttab
    • enter image description here
    • enter image description here
    • enter image description here
  22. Créer le fichier /etc/grub.d/40_custom
    • enter image description here
  23. Editar /etc/default/grub et mettre
    • GRUB_TIMEOUT_STYLE=menu
    • GRUB_TIMEOUT=10
    • enter image description here
  24. update-initramfs -u
  25. update-grub
    • enter image description here
    • enter image description here
  26. exit
  27. reboot
  28. Après avoir redémarré votre ordinateur, sélectionnez l'option Ubuntu et il vous demandera correctement votre mot de passe de cryptage.
    • enter image description here
  29. Après vous être connecté, exécutez
    • sudo apt-get update
    • sudo apt-get install gparted
  30. Et en ouvrant gparted vous trouverez ceci
    • enter image description here

Pour des instructions plus détaillées, lisez le tutoriel original indiqué en haut de cette question ou recherchez sur google l'utilisation de ces commandes.


Linux Mint 19.1 Cinnamon

Pour les autres installations Linux, reboot su Ubuntu machine, démarrer avec Mint 19.1 (Live CD), et ouvrez une fenêtre de terminal

  1. sudo su -
  2. cryptsetup luksFormat /dev/sda6
  3. cryptsetup luksOpen /dev/sda6 sda6_crypt
  4. pvcreate /dev/mapper/sda6_crypt
  5. vgcreate vgmint /dev/mapper/sda6_crypt
  6. lvcreate -L10G -n mint_root vgmint
    • lvcreate -l 100%FREE -n mint_root vgmint (facultatif, au lieu d'exécuter lvcreate -L10G -n mint_root vgmint vous pouvez exécuter ceci lvcreate -l 100%FREE -n mint_root vgmint pour utiliser tout l'espace libre de votre disque, au lieu de seulement 10 Go)
    • enter image description here
    • enter image description here
  7. Ne fermez pas le terminal, et ouvrez l'installateur de la distro, sélectionnez Autre chose et marquer les options suivantes
    • /dev/sda2 monté comme /boot partition avec ext2 format
    • /dev/mapper/vgmint-mint_root monté comme / avec ext4 format.
    • /dev/sda2 comme boot loader installation (ne pas sélectionner /dev/sda comme avant)
    • Ne marquez rien d'autre
    • enter image description here
    • enter image description here
  8. Sélectionnez Install Now après avoir sélectionné les options ci-dessus
  9. Ne redémarrez pas, cliquez sur Continuer à utiliser Linux et sélectionnez le terminal ouvert.
  10. mkdir /mnt/newroot
  11. mount /dev/mapper/vgmint-mint_root /mnt/newroot
  12. mount -o bind /proc /mnt/newroot/proc
  13. mount -o bind /dev /mnt/newroot/dev
  14. mount -o bind /dev/pts /mnt/newroot/dev/pts
  15. mount -o bind /sys /mnt/newroot/sys
  16. cd /mnt/newroot
  17. chroot /mnt/newroot
  18. mount /dev/sda2 /boot
  19. blkid /dev/sda6 (copier l'UUID sans les guillemets et l'utiliser à l'étape suivante)
  20. echo sda6_crypt UUID=5f22073b-b4ab-4a95-85bb-130c9d3b24e4 none luks > /etc/crypttab
    • enter image description here
    • enter image description here
    • enter image description here
  21. update-initramfs -u
  22. update-grub
    • enter image description here
    • enter image description here
  23. exit
  24. reboot
  25. Après avoir redémarré votre ordinateur, sélectionnez l'option Linux Mint on /dev/sda2
    • enter image description here
  26. Ensuite, il démarrera correctement Mint 19.1 et a demandé le mot de passe de cryptage
    • enter image description here
  27. Après vous être connecté, exécutez
    • sudo apt-get update
    • sudo apt-get install gparted
  28. Et en ouvrant gparted vous trouverez ceci
    • enter image description here

Liens connexes :

  1. Comment puis-je redimensionner une partition LVM active ?
  2. Comment puis-je redimensionner une partition LVM ? (i.e. : volume physique)
  3. https://www.tecmint.com/extend-and-reduce-lvms-in-linux/
  4. Grub ne fonctionne pas avec Windows 8
  5. Démarrage UEFI avec /boot crypté sur Ubuntu 14.04 LTS

3voto

mkasberg Points 1114

J'ajoute une autre réponse ici car la plupart des autres ressources que j'ai trouvées (ici et ailleurs) sont un peu dépassées, et je pense que certaines des étapes peuvent être simplifiées.

Premièrement, comme mentionné dans d'autres réponses, Si vous ne voulez pas faire de double démarrage, il suffit de choisir l'option de cryptage dans le programme d'installation automatique.

Il est important de noter que cette méthode ne crypte pas /boot . Bien qu'il y ait des raisons valables pour crypter /boot le programme d'installation graphique ne le crypte pas lorsque vous effectuez une installation graphique avec LUKS. En tant que tel, j'ai suivi ce précédent, et j'ai gardé la simplicité d'un fichier non crypté. /boot partition.


Ubuntu 20.04 et Windows 10

Tout au long de ce guide, je vais faire référence à /dev/sda . Le vôtre peut être différent - en particulier, il peut être /dev/nvme0n1 . Il suffit d'effectuer les substitutions appropriées ci-dessous, en notant également que /dev/sda1 correspondrait à /dev/nvme0n1p1 . 1

Le partitionnement peut être effectué avec GParted, sgdisk, ou gdisk. sgdisk est le plus facile à référencer ici en tant que commande.

  1. Configurez votre BIOS pour l'UEFI uniquement. Pas de MBR, pas de legacy boot. 2

  2. Initialisez le lecteur en tant que lecteur GPT et créez une partition système 550M EFI formatée en FAT32 (en tant que root).

    # sgdisk --zap-all /dev/sda
    # sgdisk --new=1:0:+550M /dev/sda
    # sgdisk --change-name=1:EFI /dev/sda
    # sgdisk --typecode=1:ef00 /dev/sda
    # mkfs.fat -F 32 /dev/sda1
  3. Installer Windows. Dans le programme d'installation, choisissez de créer une nouvelle partition pour Windows, et donnez-lui une taille appropriée (environ la moitié de votre disque dur). Laissez un espace non alloué que vous utiliserez plus tard pour Ubuntu. Lorsque vous faites cela, le programme d'installation crée en fait plusieurs partitions pour Windows.

  4. Si vous le souhaitez, une fois l'installation de Windows terminée, activez BitLocker sur votre ordinateur. C: lecteur. Cela créera une autre partition.

  5. Faire des partitions pour Ubuntu (en tant que root). La partition 768M est pour /boot . L'autre est destinée à Ubuntu et sera chiffrée avec LUKS et utilisera LVM (comme le processus d'installation par défaut le configurerait). (Si vous n'avez pas configuré BitLocker avant, vos numéros de partition seront décalés de 1 par rapport à mon exemple ci-dessous (donc mon sda5 est votre sda4).

    # sgdisk --new=5:0:+768M /dev/sda
    # sgdisk --new=6:0:0 /dev/sda
    # sgdisk --change-name=5:/boot --change-name=6:rootfs /dev/sda
    # sgdisk --typecode=5:8301 --typecode=6:8301 /dev/sda
    # mkfs.ext4 -L boot /dev/sda5
  6. Configurez LUKS et LVM (en tant que root). J'ai mis 8G d'espace swap. Une bonne règle de base est la quantité de RAM dans votre système. L'espace de pagination sera crypté.

    # cryptsetup luksFormat --type=luks1 /dev/sda6
    # cryptsetup open /dev/sda6 sda6_crypt
    
    # pvcreate /dev/mapper/sda6_crypt 
    # vgcreate ubuntu-vg /dev/mapper/sda6_crypt 
    # lvcreate -L 8G -n swap_1 ubuntu-vg 
    # lvcreate -l 100%FREE -n root ubuntu-vg
  7. Installez Ubuntu en utilisant l'installateur graphique. Choisissez vous-même les partitions.

    • /dev/sda5 como ext4 para /boot
    • /dev/mapper/ubuntu--vg-root como ext4 para /
    • /dev/mapper/ubuntu--vg-swap_1 como swap
    • Le dispositif de chargement d'amorçage doit être /dev/sda
  8. Lorsque le programme d'installation est terminé, ne quittez pas. Nous devons configurer /etc/crypttab (en tant que racine). C'est ce qui déclenchera votre demande de phrase de passe au démarrage. Remplacez l'UUID dans le fichier par l'UUID de votre disque, obtenu à partir de sudo blkid /dev/sda6

    # mount /dev/mapper/ubuntu--vg-root /target
    # mount /dev/sda5 /target/boot
    # for n in proc sys dev etc/resolv.conf; do mount --rbind /$n /target/$n; done 
    # chroot /target
    # mount -a
    
    # echo 'sda6_crypt UUID=abcdefgh-1234-5678-9012-abcdefghijklm none luks,tries=0,discard,loud' > /etc/crypttab
    # update-initramfs -k all -c

C'est fait ! Si vous utilisez BitLocker sur Windows, il n'aimera pas être démarré avec Grub. Au lieu de cela, démarrez directement sur Windows à partir des options de démarrage de votre BIOS.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X