staging.inyokaproject.org

Mainline-Kernel signieren (Bootfähigkeit herstellen - bezüglich UEFI)

Status: Gelöst | Ubuntu-Version: Ubuntu 18.04 (Bionic Beaver)
Antworten |

sbi

Anmeldungsdatum:
12. Januar 2005

Beiträge: 151

Hallo Community,

mein installierter Mainline-Kernel kann nicht gebootet werden, da dieser nicht signiert ist (UEFI aktiv).

Wie signiere ich einen Kernel (ich habe hier im Forum und im Wiki keine (deutsche) Anleitung gefunden)?

Bitte um Hilfe. Vielen Dank!

mhe

Anmeldungsdatum:
29. Dezember 2007

Beiträge: 210

Brauchst du denn unbedingt Secure Boot? .. sonst schalte es doch im BIOS ab.

sbi

(Themenstarter)

Anmeldungsdatum:
12. Januar 2005

Beiträge: 151

mhe schrieb:

Brauchst du denn unbedingt Secure Boot? .. sonst schalte es doch im BIOS ab.

Benno-007 schrieb:

Ab 2020 wird es neu mit Win ja nur noch Secure Boot Geräte geben, wo sich das nicht abstellen lässt. Die selbstgebratenen Kernel muss man dann signieren.

Generell ist Secure Boot schon eine positive Sache und wenn man dies in Zukunft ggf. nicht mehr deaktivieren kann, wird diese Anleitung eh benötigt. 😉

Mainline-Kernel + UEFI gibt es ja nun schon seit einigen Jahren. Ich denke doch, dass es schon einige Nutzer gibt, welche diese Problematik gelöst haben... Wenn diese Ihre Vorgehensweise uns mitteilen könnten, wäre dies super!

Planspiel

Anmeldungsdatum:
2. Mai 2016

Beiträge: 673

Kurz mal Tante Google bemüht:

Ggf. hilft Dir https://ubuntu.com/blog/how-to-sign-things-for-secure-boot weiter. Siehe u.a. Abschnitt "What about kernels and bootloaders?"

sbi schrieb:

Generell ist Secure Boot schon eine positive Sache und wenn man dies in Zukunft ggf. nicht mehr deaktivieren kann, wird diese Anleitung eh benötigt. 😉

Auch wenn man im BIOS/UEFI nicht deaktivieren lässt, sollte es mit mokutils gehen. Siehe https://wiki.ubuntu.com/UEFI/SecureBoot/DKMS Abschnitt "Method 2 - Disable Secure Boot in shim-signed"

sbi

(Themenstarter)

Anmeldungsdatum:
12. Januar 2005

Beiträge: 151

Planspiel schrieb:

Ggf. hilft Dir https://ubuntu.com/blog/how-to-sign-things-for-secure-boot weiter. Siehe u.a. Abschnitt "What about kernels and bootloaders?"

Vielen Dank! Aber diese Seite hatte ich schon gefunden, daher hatte ich geschrieben "keine (deutsche) Anleitung gefunden". Mit dieser Anleitung kam ich leider nicht klar...

Planspiel schrieb:

sbi schrieb:

Generell ist Secure Boot schon eine positive Sache und wenn man dies in Zukunft ggf. nicht mehr deaktivieren kann, wird diese Anleitung eh benötigt. 😉

Auch wenn man im BIOS/UEFI nicht deaktivieren lässt, sollte es mit mokutils gehen. Siehe https://wiki.ubuntu.com/UEFI/SecureBoot/DKMS Abschnitt "Method 2 - Disable Secure Boot in shim-signed"

Okay, danke für den Tipp. Aber ich möchte eigentlich UEFI verwenden.

mhe

Anmeldungsdatum:
29. Dezember 2007

Beiträge: 210

sbi schrieb:

Planspiel schrieb:

Ggf. hilft Dir https://ubuntu.com/blog/how-to-sign-things-for-secure-boot weiter. Siehe u.a. Abschnitt "What about kernels and bootloaders?"

Vielen Dank! Aber diese Seite hatte ich schon gefunden, daher hatte ich geschrieben "keine (deutsche) Anleitung gefunden". Mit dieser Anleitung kam ich leider nicht klar...

So besser? : https://translate.google.com/translate?hl=&sl=auto&tl=de&u=https%3A%2F%2Fubuntu.com%2Fblog%2Fhow-to-sign-things-for-secure-boot&sandbox=1

sbi

(Themenstarter)

Anmeldungsdatum:
12. Januar 2005

Beiträge: 151

🤣

Welche Dateien muss ich denn signieren? Das Debian Paket z. B. "linux-image-unsigned-5.3.1-050301-generic_5.3.1-050301.201909210632_amd64.deb", die "vmlinuz-5.3.1-050301-generic"-Datei unter "/boot" oder alle Dateien unter "/lib/modules/5.3.1-050301-generic"? Sorry, ich habe dies noch nie gemacht!

Verwende ich dann sbsign oder kmodsign?

winfuss

Anmeldungsdatum:
26. August 2014

Beiträge: Zähle...

Kaum ein Jahr später gibt es eine Lösung. Das machen wir aber auf Englisch, die guten Tipps sind immer auf Englisch.

My Ubuntu Version is 20.04 .

My new Superlaptop wouldn't wake up from suspend.

According to this page there was a chance using this Kernel:

http://ubuntuhandbook.org/index.php/2020/08/install-linux-kernel-5-8-ubuntu/

The commands there worked for me,I installed 2x headers, modules and image.

My "Kernel String" was "5.8.12-050812-generic"

Now reboot, deaktivate Secure Boot, test wether the kernel has the feature that you need (it does)

Then activate Secure Boot again and boot into the old kernel

According to: https://ubuntu.com/blog/how-to-sign-things-for-secure-boot

I created a MOK - Machine Owner Key

(the openssl command is quite similar to the command for creating a webserver ssl certificate, except for the OIDs. Remarkable that the OID for signing modules is not registered on oid-info.com )

Imported this MOK

uninstalled shim and shim-signed

reinstalled shim and shim-signed

rebooted into shim. You have to be fast with clicking at this moment, shim is on the screen only for a few seconds, if you miss it, you will have to repeat the MOK-import and the shim un/reinstall Screen looks similar to (is this an advanced version of shim ? ) https://github.com/hakuna-m/wubiuefi/wiki/MOKManager

There I installed my MOK

Afterwards I found out, that an Ubuntu CA from 2012 had been installed with this process automatically!

Now signed the Kernel:

1
2
/boot# sbsign --key /root/sb/MOK.priv --cert /root/sb/MOK.pem vmlinuz-5.8.12-050812-generic --output vmlinuz-5.8.12-050812-generic
Signing Unsigned original image

Signed the Modules: (from https://askubuntu.com/questions/770205/how-to-sign-kernel-modules-with-sign-file )

1
2
/# time find lib/modules/5.8.12-050812-generic -iname "*.ko" -exec /usr/src/linux-headers-5.8.12-050812-generic/scripts/sign-file sha512 /root/sb/MOK.priv /root/sb/MOK.der {} \;
took about 15 seconds

Rebuilt initramfs:

1
/boot# update-initramfs -u -k 5.8.12-050812-generic

That's it. Now I could boot this Kernel/modules with Secure Boot enabled, but the mainline kernel has some stability issues (just as they told you ..)

Antworten |