Linux Secure Boot
Was ist Linux Secure Boot?
Linux Secure Boot ermöglicht es bestimmten Linux-Distributionen, mit aktiviertem UEFI Secure Boot in Hyper-V-VMs der Generation 2 zu booten. Microsoft hat die Unterstützung dafür in Windows 10 und Windows Server 2016 eingeführt.
Mit der Einführung von Linux Secure Boot wurde ein Hyper-V-Problem behoben, das das Booten von nicht-Windows-Betriebssystemen (OS) in virtuellen Maschinen verhinderte, wenn diese VMs auf Computern liefen, die das Unified Extensible Firmware Interface verwendeten. Der UEFI-Standard definiert eine Firmware-Spezifikation, die Unterstützung für Secure Boot bietet.
Der Begriff Linux Secure Boot kann sich sowohl auf die Nutzung von UEFI Secure Boot durch ein Linux-Betriebssystem als auch auf die spezifische Implementierung in Hyper-V-Umgebungen beziehen. In diesem Zusammenhang ist Linux Secure Boot einfach eine Funktion in einem Linux-Betriebssystem, die es ermöglicht, Secure Boot auf einem UEFI-basierten Computer zu nutzen. Doch selbst wenn eine Linux-Distribution Secure Boot verwenden kann, läuft das Betriebssystem nicht unbedingt in einer Hyper-V Generation 2 VM. Hyper-V unterstützt nur bestimmte Linux-Distributionen.
Die Rolle von Secure Boot beim Systemstart
Alle Computer sind auf einen Bootloader angewiesen, der bei jedem Start die Kontrolle von der Firmware des Computers an das Betriebssystem weitergibt. Vor der Einführung von Secure Boot boten Bootloader einen häufigen Angriffsvektor für Mechanismen wie Rootkits, die den Bootloader umgehen und Malware starten, die das Betriebssystem in einem kompromittierten Zustand startet. Infektionen durch solche Angriffe sind mit herkömmlichen Antimalware-Tools nur schwer zu isolieren und zu entfernen.
Um den Bootload-Vorgang besser zu schützen, haben Branchenexperten die Secure-Boot-Funktion als Teil der UEFI-Spezifikation entwickelt. Auf einem Computer, der mit UEFI-Firmware konfiguriert ist, überprüft Secure Boot den Bootloader, bevor die Kontrolle an das Betriebssystem übergeben wird. Auf diese Weise stellt Secure Boot sicher, dass nur zugelassene Betriebssysteme auf einem UEFI-basierten Computer ausgeführt werden können.
Secure Boot überprüft die kryptografische Signatur im Bootloader und gegebenenfalls des Kernels und anderer kritischer Komponenten, um sicherzustellen, dass keine unautorisierte Software geladen wird. Das wird über einen registrierten Schlüssel in der UEFI-Firmware festgestellt. Wenn eine Übereinstimmung gefunden wird, wird der Bootvorgang fortgesetzt. Wenn Secure Boot den Bootloader nicht verifizieren kann, gibt das System eine Fehlermeldung aus und der Boot-Vorgang wird abgebrochen. Die meisten der heutigen Computer sind mit UEFI-Firmware konfiguriert.
Secure Boot auf Windows-Computern
Alle Windows-Betriebssysteme erfordern die Verwendung von Secure Boot, einschließlich Windows 10 und 11 sowie Windows Server 2016 und höher. Vor der Einführung von Secure Boot konnten Benutzer jedes beliebige Betriebssystem auf ihren Computern installieren, solange die Hardware des Systems die Anforderungen für das jeweilige Betriebssystem erfüllte.
Die Umstellung auf Secure Boot begann im Jahr 2011. Damals verlangte Microsoft, dass Secure Boot auf allen Systemen aktiviert wird, die für die Ausführung von Windows 8 zertifiziert sind. Die Firmware musste außerdem den korrekten kryptografischen Schlüssel von Microsoft enthalten, der die Installation von nicht zugelassenen Betriebssystemen verhinderte, einschließlich vieler Linux-Versionen.
Um diese Einschränkung zu umgehen, mussten Administratoren Secure Boot vor der Installation eines Linux-Betriebssystems deaktivieren oder Secure Boot in einem benutzerdefinierten Modus betreiben, der das Hinzufügen zusätzlicher Betriebssystemschlüssel zur Firmware erlaubte.
Linux Secure Boot in Hyper-V
Microsoft hat Secure Boot für Hyper-V-VMs der Generation 2 in Windows Server 2012 R2 eingeführt. Allerdings waren die VMs auf Windows-Betriebssysteme beschränkt. Secure Boot war keine Option für VMs, auf denen ein Linux-Betriebssystem lief.
Microsoft fügte die Linux-Secure-Boot-Funktion zu Hyper-V in Windows 10 und Windows Server 2016 hinzu. Die Funktion wird weiterhin in Windows Server 2019, Windows Server 2022, Hyper-V Server 2016 und Microsoft Hyper-V Server 2019 unterstützt.
Administratoren können eine Linux-Distribution in einer Hyper-V-VM verwenden, solange die digitale Signatur des Bootloaders der Distribution mit einem kryptografischen Schlüssel in der UEFI-Firmware übereinstimmt. Derzeit können die folgenden Linux-Versionen Secure Boot in Hyper-V-VMs der Generation 2 verwenden:
- CentOS 7.0 (End of Life, Nachfolger: AlmaLinux, RockyLinux)
- Debian 10, 11 und 12
- OpenSUSE Leap 15.4 und spätere Versionen
- Oracle Linux 7.0 und spätere Versionen
- Red Hat Enterprise Linux (RHEL) 7.0 und spätere Versionen
- SUSE Linux Enterprise Server (SLES) 12 und spätere Versionen
- Ubuntu 20.04, 22.04 und 24.04

Um die Vorteile der Linux-Secure-Boot-Funktion zu nutzen, müssen Administratoren eine Hyper-V-VM der Generation 2 verwenden. Sie müssen außerdem sicherstellen, dass die Secure-Boot-Funktion auf der VM aktiviert ist und dass die VM so konfiguriert ist, dass sie den Microsoft UEFI Key Exchange Key (KEK) verwendet, bevor sie die VM startet.
Administratoren können VM-Konfigurationen mit Hyper-V Manager, Virtual Machine Manager oder einer erweiterten Windows-PowerShell-Sitzung verwalten.
Deaktivierung von Secure Boot
Die Hyper-V-Secure-Boot-Funktion unterstützt nur bestimmte Linux-Versionen. Bei anderen Varianten kann es für Administratoren notwendig sein, die Secure-Boot-Funktion für die Ziel-VM zu deaktivieren.
Bevor Sie diesen Schritt unternehmen, sollten Sie jedoch die potenziellen Sicherheitsauswirkungen des Betriebs eines unternehmenskritischen Servers ohne den Schutz von Secure Boot in Betracht ziehen. Vor der Deaktivierung von Secure Boot sollten sich Administratoren beim Systemhersteller nach Firmware-Upgrades erkundigen, die eine angemessene Kompatibilität mit Secure Boot bieten könnten.