le fait d’activer ou pas le secure boot ne touche pas à tes installations.
Je sais pas si je passe du temps à rendre mon boot sécurisé, ou si je laisse comme ça, peut-être pour plus tard… J’ai l’impression que je risque d’en baver quand même.
Bon, de ce que je comprends, virer shim-signed en même temps que grub ne sera pas problématique, vu que je ne suis pas en secure boot et que rEFInd n’utilise pas shim.
Une petite question bête : pourquoi quand on installe Debian sans secure boot activé, il installe une version qui ne peut pas démarrer en secure boot activé ?
Je me disais que ce serait plus simple pour tous si Debian s’installait systématiquement avec tout ce qu’il faut de certificats et de signatures, afin qu’il n’y ait « plus qu’à » déclarer ses clés dans le setup UEFI, non ? Il y a probablement des trucs qui m’échappent.
Parce que les modules de ton noyau ne sont pas signés. Et du coup, au démarrage il ne peut pas charger les modules concernés.
Mais pourtant c’est bien Debian qui compile et package le noyau et ses modules, si je ne dis pas de bêtise ?
Je viens de faire un test intéressant : j’ai activé le Windows UEFI mode.
Au boot, message d’erreur disant que mon premier choix (rEFInd) ne peut pas démarrer, il me propose d’appuyer sur une touche pour passer au second choix qui est Grub.
Et là, bim, Grub démarre sans souci ! J’ai lancé mon Debian qui a pourtant été installé sans secure boot.
la compilation consiste à transformer un fichier de code en un executable.
La signature d’un fichier/module/noyau n’a rien à voir avec.
D’autant que tu ne peux préjuger du certificat et de la clef qui vont servir à la signature.
Ensuite si ton grub a été installé sans tenir compte complètement il va démarrer, mais tu n’as rien de la sécurité liée à Secure Boot.
Et ton test prouve sans conteste que rEFInd n’est pas un bootloader.
Et pourtant je vois ça une fois démarré en secure boot via Grub :
$ mokutil --sb-state
SecureBoot enabled
Je sais qu’il existe des moyens de sécuriser le démarrage par rEFInd, je vais creuser un peu.
Alors, j’ai encore fait un pas dans la bonne direction. J’ai simplement récupéré le binaire de shim-signed (shimx64.efi) et l’ai copié dans le répertoire EFI de mon rEFInd. Puis j’ai ajouté dans mes clés MOK le certificat avec lequel est signé rEFInd (c’est un certificat perso au nom de l’auteur de rEFInd, Rod Smith). Avec tout ça :
-
shimest lancé par l’EFI en secure boot comme il est signé avec le certificat de Microsoft (celui de 2011, en attendant la mise à jour de shim avec la signature 2023) présent dans mes clés DB -
refindest lancé parshimen secure boot comme il est signé par le certificat de son auteur présent dans mes clés MOK -
linux-image-xxxxxainsi que Windows Boot Loader sont lancés en secure boot parrefindcomme ils sont signés respectivement par le certificat Debian de mes clés MOK et la clé Microsoft de mes DB
Et du coup je n’utilise plus la séquence de démarrage shim > grub. Je vais la garder installée encore quelque temps, juste au cas où, avant de la virer.