In diesem Dokument finden Sie eine Anleitung zum Aktualisieren der Variablen für die Datenbank mit zulässigen Signaturen (db) und den Schlüsselaustauschschlüssel (KEK) auf Compute-Instanzen, die vor dem 7. November 2025 erstellt wurden, um aktualisierten Zertifikaten für Secure Boot zu vertrauen.
Die Aktualisierung von KEK und db ist eine Alternative für Kunden, die ihre betroffenen Compute-Instanzen nicht neu erstellen.
Hinweis zu Neustartanforderungen: Im Gegensatz zu Windows ist unter Linux kein Systemneustart erforderlich, damit KEK- und db-Signaturaktualisierungen in die UEFI-Variablen geschrieben werden. Linux schreibt Aktualisierungen nach Ausführung des Befehls sofort in den NVRAM- oder Firmware-Speicher.
Hinweis
Bevor Sie Ihre Secure Boot-KEK- und db-Zertifikate aktualisieren, prüfen Sie, ob Ihre Instanzen eine Aktualisierung erfordern, und führen Sie die folgenden Vorbereitungen aus, um potenzielle Probleme beim Starten oder Entschlüsseln zu vermeiden:
- Voraussetzungen prüfen: Prüfen Sie, ob für Ihre Instanzen eine Aktualisierung der Secure Boot-Zertifikate erforderlich ist.
- Datenintegrität und Schlüsselwiederherstellung:Suchen Sie die Wiederherstellungsschlüssel für die Festplattenverschlüsselung (BitLocker oder LUKS FDE) und sichern Sie wichtige Daten. Wenn die Konfiguration falsch ist, kann das Ändern von Sicherheitsvariablen den Zugriff auf Festplatten sperren.
- Empfohlene Reihenfolge für Linux-Updates:Bei Linux-Instanzen empfehlen wir, die UEFI-Variable
dbauf Microsoft UEFI CA 2023 zu aktualisieren, bevor Sie auf neue Shims aktualisieren. Diese Reihenfolge trägt dazu bei, ein potenzielles Problem mit der Zertifizierungsstelle zu vermeiden, wenn ein Shim-Update angewendet wird, das nur mit der Microsoft UEFI CA 2023 signiert ist, während die Datenbank nur das Zertifikat von 2011 enthält. - Benutzerdefinierte PK- oder KEK-Konfigurationen:Wenn Ihre Instanz benutzerdefinierte Secure Boot-Variablen verwendet (z. B. einen benutzerdefinierten
PKoderKEK), können die in diesem Leitfaden bereitgestellten Standardaktualisierungsdateien (DBUpdate3P2023.binoderkek2023update.bin) nicht direkt angewendet werden. Die UEFI-Firmware erfordert, dass Aktualisierungsdateien mit dem privaten Schlüssel desKEKoderPKsigniert sind, der auf dem System vorhanden ist. Wenn Sie benutzerdefinierte Schlüssel verwenden, müssen Sie die Aktualisierungsbinärdateien mit Ihren eigenen privaten Schlüsseln signieren oder die Aktualisierungen über Ihre benutzerdefinierte Zertifizierungsstelle verwalten.
db und KEK unter Linux mit fwupd aktualisieren
fwupdmgr-Versionen 2.0.10 oder höher unterstützen diese Methode. Prüfen Sie Ihre Version mit dem Befehl sudo fwupdmgr --version.
Hinweis zu RHEL 8/9 und SLES 15:Enterprise-Repositories für RHEL 8/9 und SUSE Linux Enterprise Server (SLES) 15 bieten ältere Versionen von fwupdmgr (RHEL 8 mit Version 1.7.8, RHEL 9 mit Version 1.9.13 und SLES 15 SP6 mit 1.9.10), die den erforderlichen Versionsschwellenwert nicht erfüllen. Wenn Sie RHEL 8/9 oder SLES 15 verwenden, müssen Sie eine der folgenden Aktionen ausführen: fwupd aus der Quelle erstellen oder die später beschriebenen Methoden sbsigntool/sbsigntools oder efitools verwenden.
Hinweis zu SLES 12/15: Enterprise-Repositories für SLES 12/15 bieten fwupd nicht und SUSE Package Hub-Repositories für SLES 15 bieten ältere Versionen von fwupdmgr, die den erforderlichen Versionsschwellenwert nicht erfüllen. Wenn Sie SLES 12 verwenden, müssen Sie fwupd aus der Quelle erstellen. Wenn Sie SLES 15 verwenden, müssen Sie eine der folgenden Aktionen ausführen: fwupd aus der Quelle erstellen oder die später beschriebenen Methoden efitools oder sbsigntools mit Backports verwenden, die im SUSE Package Hub verfügbar sind.
Führen Sie den folgenden Befehl aus:
sudo fwupdmgr refresh
sudo fwupdmgr update 5bc922b7bd1adb5b6f99592611404036bd9f42d0
sudo fwupdmgr update b7a1d3d90faa1f6275d9a98da4fb3be7118e61c7
db und KEK unter Linux mit efitools aktualisieren
In den folgenden Schritten wird beschrieben, wie Sie die Variablen db und KEK mit dem Paket efitools aktualisieren.
db aktualisieren
Laden Sie die Aktualisierungsbinärdatei aus dem Repository von Microsoft herunter:
wget https://github.com/microsoft/secureboot_objects/raw/refs/heads/main/PostSignedObjects/Optional/DB/amd64/DBUpdate3P2023.binMachen Sie die Variable veränderlich, indem Sie das Schreibschutz-Flag entfernen:
sudo chattr -i /sys/firmware/efi/efivars/db-*Aktualisieren Sie die Variable mit
efi-updatevar:sudo efi-updatevar -a -f DBUpdate3P2023.bin dbStellen Sie das Schreibschutz-Flag wieder her, um die Variable zu schützen:
sudo chattr +i /sys/firmware/efi/efivars/db-*
KEK aktualisieren
Laden Sie das
.cab-Archiv mit dem Zertifikatupdate herunter:wget https://fwupd.org/downloads/1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cabWenn
gcabnicht installiert ist, installieren Sie es. Führen Sie dazu beispielsweise einen der folgenden Befehle aus:Unter Debian oder Ubuntu :
sudo apt update sudo apt install gcabUnter SUSE Linux Enterprise Server (SLES) oder openSUSE (erfordert SUSE Package Hub):
sudo SUSEConnect -p PackageHub/15.5/x86_64 sudo zypper install gcab(Hinweis: Ersetzen Sie
15.5durch Ihre SLES-Version, falls sie abweicht).
Extrahieren Sie das Archiv mit
gcab:gcab --extract 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cabPrüfen Sie, ob die Datei den erwarteten MD5-Hash hat:
6a1c58e1b8391c0e3f2e97f83917807a.md5sum kek2023update.binMachen Sie die Variable
KEKveränderlich:sudo chattr -i /sys/firmware/efi/efivars/KEK-*Wenden Sie das Update an:
sudo efi-updatevar -a -f kek2023update.bin KEKStellen Sie das Schreibschutz-Flag wieder her, um die Variable zu schützen:
sudo chattr +i /sys/firmware/efi/efivars/KEK-*
db und KEK unter Linux mit sbsigntool oder sbsigntools aktualisieren
In den folgenden Schritten wird beschrieben, wie Sie die Variablen db und KEK mit dem Dienstprogramm sbkeysync aus dem Paket sbsigntool oder sbsigntools aktualisieren.
Hinweis zum Paketnamen und zur Verfügbarkeit :
- Debian und Ubuntu nennen das Dienstprogrammpaket
sbsigntool(ohne „s“ am Ende). Führen Siesudo apt install sbsigntoolaus, um es zu installieren. - Red Hat Enterprise Linux (RHEL), CentOS und Fedora-basierte Distributionen nennen das Dienstprogrammpaket
sbsigntools(mit „s“ am Ende). Dieses Paket ist im EPEL-Repository (Extra Packages for Enterprise Linux) verfügbar. Um es unter RHEL zu installieren, aktivieren Sie das EPEL-Repository (sudo dnf install epel-release) und führen Sie dannsudo dnf install sbsigntoolsaus. - SUSE Linux Enterprise Server (SLES) und openSUSE nennen das Dienstprogrammpaket ebenfalls
sbsigntools. Dieses Paket ist im SUSE Package Hub-Repository verfügbar. Um es zu installieren, aktivieren Sie den SUSE Package Hub (z. B.sudo SUSEConnect -p PackageHub/15.5/x86_64, wobei Sie15.5durch Ihre SLES-Version ersetzen) und führen Sie dannsudo zypper install sbsigntoolsaus.
db aktualisieren
Laden Sie die Aktualisierungsbinärdatei aus dem Repository von Microsoft herunter:
wget https://github.com/microsoft/secureboot_objects/raw/refs/heads/main/PostSignedObjects/Optional/DB/amd64/DBUpdate3P2023.binPlatzieren Sie die Datei im entsprechenden Ordner für
sbkeysync, machen Siedbveränderlich und führen Sie die Synchronisierung aus:sudo mkdir -p /etc/secureboot/keys/db sudo cp DBUpdate3P2023.bin /etc/secureboot/keys/db/ sudo chattr -i /sys/firmware/efi/efivars/db-* sudo sbkeysync --verboseStellen Sie das Schreibschutz-Flag wieder her, um die Variable zu schützen:
sudo chattr +i /sys/firmware/efi/efivars/db-*
KEK aktualisieren
Um die Variable KEK zu aktualisieren, laden Sie das Microsoft KEK-Update-Archiv herunter, extrahieren Sie die Aktualisierungsbinärdatei und synchronisieren Sie sie mit dem Dienstprogramm sbkeysync. In den folgenden Abschnitten wird beschrieben, wie Sie die Binärdatei je nach Distribution extrahieren:
Laden Sie das
.cab-Archiv mit dem KEK-Zertifikatupdate herunter:wget https://fwupd.org/downloads/1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cabExtrahieren Sie das
.cab-Archiv, um die KEK-Aktualisierungsbinärdatei (kek2023update.bin) zu erhalten:Unter Debian/Ubuntu mit dem Dienstprogramm
gcab:sudo apt update && sudo apt install gcab -y gcab --extract 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cabUnter RHEL/CentOS-basierten Distributionen (z. B. RHEL 8/9) mit dem Dienstprogramm
cabextractaus EPEL:sudo dnf install epel-release -y sudo dnf install cabextract -y cabextract -f 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cabUnter SUSE Linux Enterprise Server (SLES) und openSUSE mit dem Dienstprogramm
cabextractaus dem SUSE Package Hub:sudo SUSEConnect -p PackageHub/15.5/x86_64 sudo zypper install cabextract -y cabextract -f 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab(Hinweis: Ersetzen Sie
15.5durch Ihre SLES-Version, falls sie abweicht).
Prüfen Sie, ob die extrahierte Datei
kek2023update.binden erwarteten MD5-Hash hat:6a1c58e1b8391c0e3f2e97f83917807a.md5sum kek2023update.binPlatzieren Sie die Binärdatei im entsprechenden Ordner für
sbkeysync, machen Sie die VariableKEKveränderlich und führen Sie die Synchronisierung aus:sudo mkdir -p /etc/secureboot/keys/KEK sudo cp kek2023update.bin /etc/secureboot/keys/KEK/ sudo chattr -i /sys/firmware/efi/efivars/KEK-* sudo sbkeysync --verboseStellen Sie das Schreibschutz-Flag wieder her, um die Variable zu schützen:
sudo chattr +i /sys/firmware/efi/efivars/KEK-*
db und KEK unter Windows aktualisieren
Sie müssen diese Zertifikatupdates nicht anwenden, wenn Sie Secure Boot auf dieser Instanz nicht verwenden oder verwenden möchten. Windows-Betriebssysteme ignorieren in der Regel Versuche, diese Secure Boot-Zertifikatupdates anzuwenden, wenn Secure Boot nicht aktiviert ist, da das Update nicht erforderlich ist.
Wenn Sie Secure Boot später verwenden möchten, müssen Sie es zuerst auf der Instanz aktivieren, um die Secure Boot-Zertifikate zu aktualisieren.
Auf Windows-Instanzen lösen Registrierungseinstellungen und geplante Aufgaben Updates für kompatible Versionen aus:
- Prüfen Sie, ob auf Ihren Windows-Instanzen die aktuellen monatlichen Updates angewendet wurden.
Führen Sie in PowerShell als Administrator folgenden Befehl aus:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot" -Name "AvailableUpdates" -Value 0x5944 Start-ScheduledTask -TaskName "\Microsoft\Windows\PI\Secure-Boot-Update"Starten Sie die Instanz neu, um Vorgänge für Firmware-Variablen zuzulassen. In einigen Umgebungen sind doppelte Neustarts erforderlich, wenn Virtualisierungssicherheitsfunktionen aktiv sind.