Probiere es mal mit der Live Version (Live-USB). Eine Neuinstallation ändert IMHO nichts daran. Ansonten ...
https://thomas-leister.de/fedora-secure-boot-kernelmodule-signieren/
Module mit einem eigenen Machine Owner Key (MOK) signieren. SecureBoot bleibt hierbei aktiviert und voll funktionsfähig. Eigenen MOK generieren und registrieren.
Da wir den offiziellen Fedora-Key o.v. Key natürlich nicht zum signieren nutzen können, muss ein eigener MOK erstellt werden, sodass wir Module einfach selbst signieren können. Ein neuer Key wird so generiert:
1 | openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=Custom MOK/" |
Dabei werden zwei neue Keyfiles im aktuellen Verzeichnis erzeugt: MOK.priv (der private key) und MOK.der (der public key). Beide Dateien sollten nun unbedingt gut gesichert auf einem int. und ext. Datenträger abgelegt/kopiert werden. Das gerade erzeugte Schlüsselpaar wird nun im SecureBoot-System registriert:
1 | sudo mokutil --import MOK.der |
An dieser Stelle muss ein Passwort für die Registrierung vergeben werden. Dieses wird im nächsten Schritt nur einmalig verwendet. Sobald das Passwort festgelegt ist, wird der Rechner neu gestartet. Man bekommt dann einen blauen Bildschirm angezeigt, auf dem man gebeten wird, eine beliebige Taste zu drücken. Wählt dann den zweiten Menüpunkt “Enroll MOK”. Mit “View Key” kann man den Schlüssel noch einmal überprüfen und via “Continue” den Key importieren. Für den Import ist das vorher gewählte Passwort notwendig. Das Tastaturlayout an dieser Stelle i.d.R. auf “US” umgestellt, sodass beispielsweise “z” und “y” auf der Tastatur vertauscht sind. Der Rechner startet nach dem Import neu.
Nach dem Neustart prüfen, ob der neue Key korrekt installiert wurde. Dazu wird eine Liste der registrierten Keys ausgegeben:
1 | mokutil --list-enrolled
|
Oben sollte nun der eigene Key mit dem CN “Custom MOK” erscheinen. Der Key ist nun im System registriert und kann verwendet werden. Kernelmodule können nun mit MOK signiert werden. Module (bzw. beliebiger andere Kernelmodule) erfolgt nun über diesen Befehl (hier für wl):
1 | sudo /usr/src/kernels/$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n wl) |
… wobei der markierte Modulname natürlich ggf. an das zu signierende Modul angepasst werden muss. Danach kann ein Modul ganz normal via modprobe eingebunden werden.