Verständnis von Secure Boot (oder: Wie würde man selbst eine Linux-Distribution kompatibel machen)

ReactivateMe347

Lt. Commander
Registriert
Dez. 2018
Beiträge
1.252
Hi zusammen.

Grundsätzlich funktioniert Secure Boot für Linux ja so, dass Microsoft "den Shim" signiert, der dann den Bootloader (in der Regel GRUB) verifiziert. Der shim beinhaltet dabei die "distribution-specific keys", welche dann eine Verifikation des GRUB und der Linux-Distribution erlauben.

Was ich nicht verstehe (und Google und perplexity mir offenbar nicht beantworten können): Wie kann eine Distribution ihre "distribution-specific keys" in "den Shim" bekommen?
1. Gibt es "den einen aktuellen Shim", in dem die Keys von Debian, Fedora Ubuntu usw. enthalten sind (und den Microsoft signiert)? - Wenn ja, wer verwaltet dort die Keys und entscheidet, wer aufgenommen wird? oder
2. hat jede Distribution ihren eigenen Shim, den sie jeweils einzeln von Microsoft signieren lassen muss?

Zusammengefasst: Wo müssten die Maintainer einer Linux-Distri anklopfen, damit ihre Distri in Secure Boot aufgenommen werden soll?
 
Zuerstmal musst du unterscheiden zwischen "normalem" Secure boot und "Microsoft Secure Core" certified Secure Boot.

Zweiteres hat je nach System-OEM auch unterschiedliche Eigennamen und ist ootb auch erstmal nicht Linux kompatibel.

Für ersteres fand ich das hier recht hilfreich:
https://www.ventoy.net/en/doc_secure.html
Die Ventoy Keys kannst du dir ja anschauen.
 
Danke erstmal.

Hmm, aus dem Link von @h00bi verstehe ich das so, dass Ventoy einen MOK nutzt, also der Nutzer mit der Anleitung einen Key selbst in seinem BIOS hinterlegt, was auch nur auf diesem einen System klappt ("once for each computer when booting Ventoy at the first time").
Wenn aber ein Key im shim ist, dann funktioniert er doch überall, weil der Microsoft-Key, der in jedem BIOS steht, den shim signiert - oder nicht? Ich muss doch nicht z.B. auf jedem PC, auf dem ich Secure Boot-Ubuntu starte, vorher manuell Ubuntu als MOK hinterlegen - oder doch?
(Demnach wäre das von Ventoy nach meine Verständnis ein anderer, nicht-shim Ansatz.)

Bei archLinux (@madmax2010) hingegen verstehe ich es so, dass die MOK jene Key-Liste sind, die shim auswertet. Demnach wären in shim selbst keine keys oder Hashes drin. Dann aber frage ich mich, wieso es shim überhaupt gibt. Wenn shim auf MOK zurückgreift, wieso wird den Key/Hashes im MOK nicht direkt vertraut, wozu der shim dazwischen?!
 
Shim ist ein minimaler Bootloader, der es unter anderem selbst kompilierten Kerneln ermöglichen soll, mit Secureboot zu starten. Das wurde, glaube ich, von einem Linux Entwickler ins Leben gerufen.
Problem bei Secure Boot ist halt, dass MS seine Finger im Spiel hat.
Wer glaubt, dass er mit Secure Boot sicher ist, glaubt falsch, das hat Black Lotus ja Anfang 2023 bewiesen.
 
Zurück
Oben