Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
UEFI Secure Boot auf AL2023
AL2023 unterstützt UEFI Secure Boot ab Version 2023.1. AL2023 muss mit Amazon-EC2-Instances verwendet werden, die sowohl UEFI als auch UEFI Secure Boot unterstützen. Weitere Informationen finden Sie unter Anforderungen für den Start einer Amazon EC2 EC2-Instance im UEFI-Startmodus im Amazon EC2 EC2-Benutzerhandbuch.
AL203-Instances mit aktiviertem UEFI Secure Boot akzeptieren nur Code auf Kernelebene, einschließlich des Linux-Kernels sowie Module, die signiert sind, Amazon sodass Sie sicherstellen können, dass Ihre Instance nur Codes auf Kernelebene ausführt, die von signiert wurden.AWS
Weitere Informationen zu Amazon EC2 EC2-Instances und UEFI Secure Boot finden Sie unter UEFI Secure Boot for Amazon EC2 EC2-Instances im Amazon EC2 EC2-Benutzerhandbuch.
Voraussetzungen
-
Mit AL2023 Version 2023.1 oder höher muss ein AMI verwendet werden.
-
Der Instance-Typ muss UEFI Secure Boot unterstützen. Weitere Informationen finden Sie unter Anforderungen für den Start einer Amazon EC2 EC2-Instance im UEFI-Startmodus im Amazon EC2 EC2-Benutzerhandbuch.
UEFI Secure Boot auf AL2023 aktivieren
Standard-AL2023-AMIs enthalten einen Bootloader und einen Kernel, der mit unseren Schlüsseln signiert ist. Sie können UEFI Secure Boot aktivieren, indem Sie entweder vorhandene Instances registrieren oder AMIs mit vorab aktiviertem UEFI Secure Boot erstellen, für die Sie ein Image aus einem Snapshot registrieren. UEFI Secure Boot ist standardmäßig in den Standard-AL2023-AMIs aktiviert.
Der Startmodus von AL2023-AMIs ist auf uefi-preferred gesetzt, was sicherstellt dass mit diesen AMIs gestartete Instances die UEFI-Firmware verwenden, sofern der Instance-Typ UEFI unterstützt. Sollte der Instance-Typ UEFI nicht unterstützen, dann wird die Instance mit Legacy-BIOS gestartet. Wird eine Instance im Legacy-BIOS-Modus gestartet, so wird UEFI Secure Boot nicht durchgesetzt.
Weitere Informationen zu AMI-Startmodi auf Amazon EC2 EC2-Instances finden Sie unter Instance-Startverhalten mit Amazon EC2 EC2-Startmodi im Amazon EC2 EC2-Benutzerhandbuch.
Themen
Registrierung einer vorhandenen Instance
Wenn Sie eine vorhandene Instanz registrieren möchten, befüllen Sie die spezifischen UEFI-Firmware-Variablen mit einem Schlüsselsatz, die der Firmware erlaubt, beim nächsten Start den Bootloader zu verifizieren und dem Bootloader erlaubt, den Kernel zu verifizieren.
-
Amazon Linux bietet ein Tool zur Vereinfachung des Registrierungsprozesses. Mit dem folgenden Befehl stellen Sie der Instance den erforderlichen Satz von Schlüsseln und Zertifikaten bereit.
sudo amazon-linux-sb enroll -
Führen Sie den folgenden Befehl aus, um die -Instance neu zu starten. UEFI Secure Boot wird nach dem Neustart der Instanz aktiviert.
sudo reboot
Anmerkung
Amazon-Linux-AMIs unterstützt das Nitro Trusted Platform Module (NitroTPM) nicht. Wenn Sie NitroTPM zusätzlich zu UEFI Secure Boot benötigen, helfen Ihnen die Informationen im folgenden Abschnitt weiter.
Image aus einem Snapshot registrieren
Wenn Sie mithilfe der Amazon-register-image-API ein AMI aus einem Snapshot eines Amazon EBS-Root-Volumes registrieren, können Sie das AMI mit einem binären Blob bereitstellen, der den Status des UEFI-Variablenspeichers enthält. Durch die Bereitstellung von AL2023-UefiData aktivieren Sie UEFI Secure Boot und können die Anleitungen im obigen Abschnitt ignorieren.
Weitere Informationen zum Erstellen und Verwenden eines binären Blobs finden Sie unter Erstellen eines binären Blobs mit einem vorausgefüllten Variablenspeicher im Amazon EC2 EC2-Benutzerhandbuch.
AL2023 bietet einen vorkonfigurierten binären Blob, der direkt auf Amazon-EC2-Instances verwendet werden kann. Der binäre Blob befindet sich auf einer laufenden Instance in /usr/share/amazon-linux-sb-keys/uefi.vars. Dieser Blob wird durch das amazon-linux-sb-keys-RPM-Paket bereitgestellt, das ab Version 2023.1 standardmäßig in AL2023-AMIs installiert ist.
Anmerkung
Wenn Sie sicherstellen wollen, dass Sie die neueste Version von Schlüsseln und Widerrufungen nutzen, verwenden Sie den Blob aus derselben Version von AL2023, mit der Sie das AMI erstellt haben.
Wir empfehlen, bei der Registrierung eines Images den BootMode-Parameter der RegisterImage-API auf uefi zu setzen. Das widerum erlaubt Ihnen, NitroTPM zu aktivieren, indem Sie den TpmSupport-Parameter auf v2.0 setzen. Die Einstellung des Parameters BootMode auf uefi stellt außerdem sicher, dass UEFI Secure Boot aktiviert ist und nicht versehentlich deaktiviert werden kann, wenn zu einem Instance-Typ gewechselt wird, der UEFI nicht unterstützt.
Weitere Informationen zu NitroTPM finden Sie unter NitroTPM für Amazon EC2 EC2-Instances im Amazon EC2 EC2-Benutzerhandbuch.
Widerruf-Updates
Möglicherweise muss Amazon Linux eine neue Version des Bootloaders grub2 oder des Linux-Kernels verteilen, die mit aktualisierten Schlüsseln signiert ist. In diesem Fall muss der alte Schlüssel möglicherweise widerrufen werden, um zu verhindern, dass ausnutzbare Bugs aus früheren Versionen des Bootloaders den UEFI-Secure-Boot-Verifizierungsprozess umgehen können.
Paketaktualisierungen der kernel- oder grub2-Pakete aktualisieren die Liste der Widerrufe immer automatisch im UEFI-Variablenspeicher der laufenden Instanz. Das bedeutet, dass wenn UEFI Secure Boot aktiviert ist, die alte Version eines Pakets nicht mehr ausgeführt werden kann, nachdem ein Sicherheits-Update für das Paket installiert wurde.
So funktioniert UEFI Secure Boot auf AL2023
Im Gegensatz zu anderen Linux-Distributionen bietet Amazon Linux keine zusätzliche Komponente (Shim), die als Bootloader der ersten Stufe fungiert. Ein Shim wird in der Regel mit Microsoft-Schlüsseln signiert. Bei Linux-Distributionen mit dem Shim lädt der Shim beispielsweise den grub2-Bootloader, der den eigenen Code des Shims verwendet, um den Linux-Kernel zu verifizieren. Außerdem verwaltet der Shim seinen eigenen Satz von Schlüsseln und Widerrufen in der MOK-Datenbank (Machine Owner Key), die sich im UEFI-Variablenspeicher befindet und mit dem mokutil-Tool gesteuert wird.
Amazon Linux stellt keinen Shim zur Verfügung. Da der AMI-Besitzer Kontrolle über die UEFI-Variablen hat, ist dieser Zwischenschritt nicht erforderlich und würde sich negativ auf die Start- und Boot-Zeiten auswirken. Wir haben uns dafür entschieden, standardmäßig keinen Herstellerschlüsseln zu vertrauen, um die Wahrscheinlichkeit zu verringern, dass unerwünschte Binärdateien ausgeführt werden könnten. Wie immer können Kunden natürlich eigene Binärdateien hinzufügen, wenn sie dies wünschen.
Bei Amazon Linux lädt und verifiziert UEFI unseren grub2-Bootloader direkt. Der grub2-Bootloader wurde so geändert, dass er UEFI zur Verifizierung des Linux-Kernels nach dem Laden verwendet. Der Linux-Kernel wird also mit denselben Zertifikaten verifiziert, die in der normalen UEFI-db-Variable (autorisierte Schlüsseldatenbank) gespeichert sind, und anhand derselben dbx-Variable (Sperrdatenbank) wie der Bootloader und andere UEFI-Binärdateien getestet. Da wir unsere eigenen PK- und KEK-Schlüssel bereitstellen, die den Zugriff auf die DB-Datenbank und die DBX-Datenbank steuern, können wir signierte Updates und Widerrufe nach Bedarf ohne Zwischenhändler wie den Shim verteilen.
Weitere Informationen zu UEFI Secure Boot finden Sie unter So funktioniert UEFI Secure Boot mit Amazon EC2 EC2-Instances im Amazon EC2 EC2-Benutzerhandbuch.
Eigene Schlüssel registrieren
Wie im vorherigen Abschnitt dokumentiert, benötigt Amazon Linux keinen shim für UEFI Secure Boot auf Amazon EC2. Wenn Sie die Dokumentation für andere Linux-Distributionen lesen, finden Sie möglicherweise Informationen zur Verwaltung der MOK-Datenbank (Machine Owner Key) mithilfe von mokutil, was unter AL2023 nicht vorhanden ist. Die shim- und MOK-Umgebungen umgehen einige Einschränkungen der Schlüsselregistrierung in der UEFI-Firmware, die nicht auf die Implementierung von UEFI Secure Boot durch Amazon EC2 zutreffen. Bei Amazon EC2 gibt es Mechanismen, um die Schlüssel im UEFI-Variablenspeicher ganz einfach direkt zu manipulieren.
Wenn Sie Ihre eigenen Schlüssel registrieren möchten, können Sie dies entweder tun, indem Sie den Variablenspeicher innerhalb einer vorhandenen Instance manipulieren (siehe Schlüssel aus der Instance zum Variablenspeicher hinzufügen) oder indem Sie einen binären Blob erstellen, der vorgefüllt ist (siehe Erstellen eines binären Blobs, der einen vorausgefüllten Variablenspeicher enthält).