10 Sep 2023, 00:00

Double Windows chiffré avec Veracrypt en UEFI

Share

But : avoir 2 installs Windows distinctes (en + d’une debian), chacune chiffrée par Veracypt, et que le choix se fasse via GRUB et sans avoir à choisir au sein de windows boot manager.

Si 2 installs Windows coexistent au sein d’une même ESP, alors ils partageront la même BCD, et comme le choix de l’OS intervient après le boot de l’OS et donc du déchiffrement Veracrypt, ça rend la solution non viable.

Solution (hacky) : avoir 2 ESP.

Structure du disque (table GPT) :

  • 1 partition ESP1 (FAT32, 500m, flag boot)
  • 1 partition ESP2 (FAT32, 500m, SANS le flag boot)
  • 1 partition WIN1 (NTFS, 50G ou +)
  • 1 partition WIN2 (NTFS, 50G ou +)
  • partitions nécessaires pour Debian, avec éventuellement LUKS (auquel cas 1 partition pour /boot )

Démarche générale :

  • Installer Win1

  • Installer Debian

  • Vérifier le double-boot via GRUB

  • Installer Veracrypt sur Win1, chiffrer la partition système (ceci remplace notamment EFI\Microsoft\Boot\bootmgfw.efi par le lanceur de Veracrypt)

  • Vérifier le boot de Win1 chiffré en direct, puis via GRUB. Remettre GRUB en lanceur par défaut dans l’UEFI

  • Booter Debian, copier le code GRUB (section dans /boot/grub/grub.cfg) de lancement de Win1 dans /etc/grub.d/40_custom pour être sûr de le conserver(on peut renommer l’entrée pour + de clarté)

  • Via efibootmgr, supprimer les 2 entrées Veracrypt et Windows Boot Manager (essentiel pour éviter les conflits)

  • Via Gparted enlever le flag boot sur ESP1, le positionner sur ESP2

  • update-grub (il ne devrait plus avoir d’autre OS détécté par os-prober, seulement l’entré manuelle)

  • Installer Win2

  • Vérifier le triple-boot via GRUB

  • Installer Veracrypt sur Win2, chiffrer la partition système

  • Booter Debian, copier le code GRUB de lancement de Win2 dans /etc/grub.d/40_custom

  • Via efibootmgr, supprimer les 2 entrées Veracrypt et Windows Boot Manager

  • Via Gparted enlever le flag boot sur ESP2, le positionner sur ESP1

  • update-grub

Normalement grub sera le seul OS référencé par l’EFI, il y’aura 1 entrée pour chacun des windows chiffrés, et chaque windows sera complètement indépendant d’un point de vue fichiers de démarrage.
On peut toutefois toujours monter la partition d’une install windows depuis l’autre en fonctionnement.