Changes for page UEFI Secure Boot

Last modified by Sabrina V. on 2026/02/02 10:18

From version 1.1
edited by Sabrina V.
on 2026/02/02 10:06
Change comment: There is no comment for this version
To version 2.1
edited by Sabrina V.
on 2026/02/02 10:18
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,3 +1,5 @@
1 +and verifies its signature using the distribution certificates embedded in the Shim package.
2 +
1 1  {{aagon.floatingbox/}}
2 2  
3 3  For systems with UEFI firmware and Secure Boot activated, the PXE boot process differs fundamentally from classic legacy boot via BIOS. UEFI uses a modern architecture model based on 64-bit operation, modular expandability and cryptographic verification. While legacy boot loads arbitrary code without integrity checks, Secure Boot enforces a continuous chain of trust that extends from the firmware starter to the kernel. Each component must be digitally signed in order to be executed.
... ... @@ -5,37 +5,37 @@
5 5  Since the Shim bootloader is signed by Microsoft, it is classified as trustworthy by the firmware. The Shim package also contains certificates for the respective distribution, which are used to verify the subsequent components (such as GRUB, the kernel and the initramfs). It is crucial that the certificate chain remains unchanged throughout the entire boot process so that each component is only loaded from an authorized source.
6 6  
7 7  
8 -= Ablauf des PXE-Boots im UEFI-Modus =
10 += PXE boot process in UEFI mode =
9 9  
10 -Der Ablauf gestaltet sich typischerweise wie folgt:
12 +The process typically proceeds as follows:
11 11  
12 -1. **UEFI-Firmware-Initialisierung**
13 -Die Firmware initialisiert Hardwarekomponenten und prüft, ob Secure Boot aktiv ist. Anschließend startet sie den Netzwerkstack für den PXE-Boot.
14 -1. **DHCP-Anfrage und Bootdatei-Zuweisung**
15 -Der PXE-Client sendet eine DHCP-Anfrage und erhält IP-Adresse, Bootserver (TFTP/HTTP) und den Namen der zu ladenden Bootdatei, typischerweise ##bootx64.efi##.
16 -1. **Shim-Start (Microsoft-signiert)**
17 -Die Firmware lädt ##bootx64.efi## (den Shim-Bootloader). Da dieser von Microsoft signiert ist, wird er als vertrauenswürdig akzeptiert.
18 -1. **GRUB-Start (Distribution-signiert)**
19 -Der Shim-Bootloader lädt ##grubx64.efi## und überprüft dessen Signatur anhand der im Shim-Paket eingebetteten Zertifikate der Distribution.
20 -1. **Kernel- und Initramfs-Start**
21 -GRUB lädt den Kernel (##vmlinuz##) und die Initramfs (##initrd.img##). Beide müssen signiert sein, sonst verweigert Secure Boot den Startvorgang.
22 -1. **Systemstart und Schlüsselprüfung**
23 -Erst wenn alle Signaturen ltig sind, wird der Kernel ausgeführt und das Betriebssystem gebootet.
14 +1. **UEFI firmware initialisation**
15 +The firmware initialises hardware components and checks whether Secure Boot is active. It then starts the network stack for PXE boot.
16 +1. **DHCP request and boot file assignment**
17 +The PXE client sends a DHCP request and receives the IP address, boot server (TFTP/HTTP) and the name of the boot file to be loaded, typically ##bootx64.efi##.
18 +1. **Shim start (Microsoft signed)**
19 +The firmware loads ##bootx64.efi## (the Shim bootloader). Since this is signed by Microsoft, it is accepted as trustworthy.
20 +1. **GRUB boot (Distribution signed)**
21 +The Shim bootloader loads ##grubx64.efi## and verifies its signature using the distribution certificates embedded in the Shim package.
22 +1. **Kernel and initramfs start**
23 +GRUB loads the kernel (##vmlinuz##) and the initramfsd (##initrd.img##). Both must be signed, otherwise Secure Boot will deny access to the boot process.
24 +1. **System start and key verification**
25 +Only when all signatures are valid will the kernel be executed and the operating system booted.
24 24  
25 -Diese Architektur stellt sicher, dass während des gesamten Bootvorgangs nur verifizierte und signierte Komponenten ausgeführt werden.
27 +This architecture ensures that only verified and signed components are executed during the entire boot process.
26 26  
27 -= Vorbereitung der Bootdateien =
29 += Preparation of the boot files =
28 28  
29 -Für den PXE-Boot unter Secure Boot benötigen Sie folgende Dateien, die von der jeweiligen Distribution bereitgestellt werden:
31 +For PXE booting under Secure Boot, you need the following files, which are provided by the respective distribution:
30 30  
31 -* ##bootx64.efi## – Shim-Bootloader (Microsoft-signiert, aus dem Paket shim-signed)
32 -* ##grubx64.efi## – GRUB EFI-Bootloader (Distribution-signiert)
33 -* ##vmlinuz## – Linux-Kernel (signiert)
34 -* ##initrd.img## – Initial-RAM-Disk (signiert)
33 +* ##bootx64.efi## – Shim bootloader (Microsoft signed, from the shim-signed package)
34 +* ##grubx64.efi## – GRUB EFI bootloader (distribution signed)
35 +* ##vmlinuz## – Linux kernel (signed)
36 +* ##initrd.img## – Initial RAM disk (signed)
35 35  
36 -Diese Dateien werden in der Regel im Verzeichnis ##/tftpboot/## oder einem Unterordner wie ##/tftpboot/uefi/## abgelegt und über DHCP/TFTP verteilt.
38 +These files are usually stored in the ##/tftpboot/## directory or a subfolder such as ##/tftpboot/uefi/## and deployed via DHCP/TFTP.
37 37  
38 -Beispielhafte Struktur
40 +Example structure
39 39  
40 40  {{code language="bash"}}
41 41  /tftpboot/
... ... @@ -48,15 +48,15 @@
48 48  {{/code}}
49 49  
50 50  {{aagon.warnungsbox}}
51 -Beachten Sie bei mehreren Distributionen, dass Shim und GRUB immer als passendes Paar verwendet werden müssen. Jede Distribution bringt ihr eigenes Zertifikatsset mit. Eine Mischung unterschiedlicher Versionen führt daher zu Signaturfehlern und Bootabbrüchen.
53 +If you have multiple distributions, please note that Shim and GRUB must always be used as a matching pair. Each distribution comes with its own set of certificates. Mixing different versions will therefore lead to signature errors and boot failures.
52 52  {{/aagon.warnungsbox}}
53 53  
54 -= Anlage der GRUB-Konfiguration =
56 += GRUB configuration file =
55 55  
56 -Im Gegensatz zum Legacy-Boot verwendet Secure Boot über UEFI eine GRUB-Konfiguration anstelle der PXELINUX-Dateien.
57 -Diese Konfiguration liegt üblicherweise in einer Datei namens ##grub.cfg##, die von ##grubx64.efi## geladen wird.
58 +Unlike legacy boot, UEFI Secure Boot uses a GRUB configuration instead of PXELINUX files.
59 +This configuration is usually stored in a file called ##grub.cfg##, which is loaded by ##grubx64.efi##.
58 58  
59 -Beispielhafte Struktur des GRUB-Konfigurationsverzeichnisses
61 +Example structure of the GRUB configuration directory
60 60  
61 61  {{code language="bash"}}
62 62  /tftpboot/
... ... @@ -64,21 +64,25 @@
64 64  {{/code}}
65 65  
66 66  {{aagon.infobox}}
67 -Anmerkung: Die ##grub.cfg## Datei wird von manchen GRUB-Implementierungen im folgenden Ort erwartet ##tftpboot/grub/grub.cfg##
69 +Note: Some GRUB implementations expect the ##grub.cfg## file to be located in the following location: ##tftpboot/grub/grub.cfg##
68 68  {{/aagon.infobox}}
69 69  
70 -**Wichtige GRUB-Parameter:**
71 71  
72 -* **set timeout: **Legt den Timeout in Sekunden fest, bevor der Standard-Eintrag gestartet wird
73 -* **menuentry: **Definiert einen Boot-Eintrag im Menü
74 -* **linuxefi: **Lädt den Kernel (EFI-spezifischer Befehl)
75 -* **initrdefi**: Lädt die Initramfs (EFI-spezifischer Befehl)
76 -* **set root:** Definiert das Root-Dateisystem oder den TFTP-Pfad
77 77  
78 -= Beispielkonfiguration (Standard-Variante) =
74 +**Important GRUB parameters:**
79 79  
80 -Eine einfache GRUB-Konfigurationsdatei für PXE-Start mit Secure Boot kann wie folgt aussehen:
76 +* **set timeout: **Sets the timeout in seconds before the default entry is started
77 +* **menuentry: **Defines a boot entry in the menu
78 +* **linuxefi: **Loads the kernel (EFI-specific command)
79 +* **initrdefi**: Loads the initramfs (EFI-specific command)
80 +* **set root:** Defines the root file system or TFTP path
81 81  
82 +
83 +
84 += Example configuration (standard variant) =
85 +
86 +A simple GRUB configuration file for PXE boot with Secure Boot may look as follows:
87 +
82 82  {{code language="ba"}}
83 83  set default=0
84 84  set timeout=5
... ... @@ -95,16 +95,21 @@
95 95  }
96 96  {{/code}}
97 97  
98 -Diese Konfiguration bietet zwei Menüoptionen:
104 +This configuration offers two menu options:
99 99  
100 -1. Start des Rescue- oder Installationssystems über Kernel und Initramfs
101 -1. Lokaler Bootvorgang über „exit (übergibt Kontrolle an Firmware)
106 +1. Start the rescue or installation system via kernel and initramfs
107 +1. Local boot process via exit (transfers control to firmware)
102 102  
103 -Wenn Sie nun ausgehend von dieser Konfiguration starten, erhalten Sie die folgende Bildschirmansicht und der Boot würde nach 5 Sekunden automatisch von der lokalen Festplatte starten.
109 +If you now start from this configuration, you will see the following screen and the boot will start automatically from the local disk after 5 seconds.
104 104  
105 -[[UEFI Boot Screen>>image:UEFI Boot_Bootscreen.png||alt="UEFI Boot Screen"]]
111 +[[UEFI Boot screen>>image:UEFI Boot_Bootscreen.png||alt="UEFI Boot Screen"]]
106 106  
107 -= Hinweis zum Secure Boot in ACMP =
108 108  
109 -Das PXE-Boot-System in ACMP unterstützt sowohl Legacy-BIOS, UEFI Boot als auch UEFI mit Secure Boot.
110 -Bei aktiviertem Secure Boot kann die Funktionalität jedoch eingeschränkt sein. Für maximale Kompatibilität wird empfohlen, eine Distribution mit offiziell signierten Bootloadern (Shim + GRUB) zu verwenden oder Secure Boot zu deaktivieren.
114 +
115 += Note on Secure Boot in ACMP =
116 +
117 +The PXE boot system in ACMP supports Legacy BIOS, UEFI Boot and UEFI with Secure Boot.
118 +
119 +However, functionality may be limited when Secure Boot is activated. For maximum compatibility, it is recommended to use a distribution with officially signed boot loaders (Shim + GRUB) or to disable Secure Boot.
120 +
121 +
© Aagon GmbH 2026
Besuchen Sie unsere Aagon-Community