In diesem Dokument wird beschrieben, wie Sie die Optionen für Shielded VM in einer VM-Instanz aktivieren und deaktivieren. Informationen zu den Images, die Shielded VM-Features unterstützen, finden Sie unter Sicherheits-Features für Betriebssystem-Images.
Übersicht
Auf einer Shielded VM-Instanz werden die Optionen Virtual Trusted Platform Module (vTPM) und Integritätsmonitoring durch Compute Engine standardmäßig aktiviert. Wenn Sie das vTPM deaktivieren, deaktiviert Compute Engine die Integritätsmonitoring, da dieses auf Daten basiert, die vom Measured Boot erfasst werden.
Compute Engine aktiviert Secure Boot nicht standardmäßig, da nicht signierte Treiber und andere Software möglicherweise nicht kompatibel sind. Secure Boot sorgt dafür, dass das System nur authentische Software ausführt, indem die Signatur aller Startkomponenten prüft und der Startvorgang angehalten wird, wenn die Signaturprüfung fehlschlägt. Dadurch wird verhindert, dass Formen von Kernel-Malware wie Rootkits oder Bootkits bei VM-Neustarts beibehalten werden. Google empfiehlt, Secure Boot zu aktivieren, wenn Sie dafür sorgen können, dass der Start einer repräsentativen Test-VM nicht verhindert wird, und sich diese für Ihre Arbeitslast eignet.
Beschränkungen
Obwohl Compute Engine-VM-Instanzen Secure Boot unterstützen, kann ein Image, das auf eine Compute Engine-VM geladen wird, möglicherweise nicht verwendet werden. Obwohl die meisten Linux-Distributionen Secure Boot auf aktuellen x86-Images unterstützen, wird es nicht immer auf ARM64 standardmäßig unterstützt. Viele Linux-Images sind so konfiguriert, dass sie nicht signierte Builds von veralteten Kernel-Modulen nicht laden, wenn Secure Boot aktiviert ist. Das betrifft am häufigsten GPU-Treiber, aber manchmal auch Sicherheitsüberwachungstools, die Kernelmodule erfordern.
Erforderliche Berechtigungen für diese Aufgabe
Zum Ausführen dieser Aufgabe benötigen Sie die folgende Berechtigung:
compute.instances.updateShieldedInstanceConfig
für die VM-Instanz
Shielded VM-Optionen in einer VM-Instanz ändern
Shielded VM-Optionen können Sie so ändern:
Console
Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.
Klicken Sie auf den Instanznamen, um die Seite VM-Instanzdetails zu öffnen.
Klicken Sie auf Beenden.
Wenn die Instanz nicht mehr ausgeführt wird, klicken Sie auf Bearbeiten.
Ändern Sie im Abschnitt Shielded VM die Shielded VM-Optionen:
Aktivieren Sie die Option Secure Boot aktivieren. Compute Engine aktiviert Secure Boot nicht standardmäßig, da nicht signierte Treiber und andere Software möglicherweise nicht kompatibel sind. Google empfiehlt, Secure Boot möglichst zu aktivieren.
Deaktivieren Sie die Option vTPM aktivieren, um das vTPM (Virtual Trusted Platform Module) zu deaktivieren. Compute Engine aktiviert das vTPM (Virtual Trusted Platform Module) standardmäßig.
Deaktivieren Sie die Option Integritätsmonitoring aktivieren, um das Integritätsmonitoring zu deaktivieren. Compute Engine aktiviert das Integritätsmonitoring standardmäßig.
Klicken Sie auf Speichern.
Klicken Sie nun auf Starten, um die Instanz zu starten.
gcloud
Beenden Sie die Instanz:
gcloud compute instances stop VM_NAME
Ersetzen Sie
VM_NAME
durch den Namen der VM, die beendet werden soll.Aktualisieren Sie die Shielded VM-Optionen:
gcloud compute instances update VM_NAME \ [--[no-]shielded-secure-boot] \ [--[no-]shielded-vtpm] \ [--[no-]shielded-integrity-monitoring]
Ersetzen Sie
VM_NAME
durch den Namen der VM, auf der Sie die Shielded VM-Optionen aktualisieren möchten.shielded-secure-boot
: Compute Engine aktiviert Secure Boot nicht standardmäßig, da nicht signierte Treiber und andere Software möglicherweise nicht kompatibel sind. Google empfiehlt, Secure Boot möglichst zu aktivieren.- Aktivieren Sie „Secure Boot“ mithilfe des Flags
--shielded-secure-boot
(empfohlen). - Deaktivieren Sie „Secure Boot“ mithilfe von
--no-shielded-secure-boot
.
shielded-vtpm
: Das Virtual Trusted Platform Module (vTPM) ist standardmäßig aktiviert. + Aktivieren Sie mit--shielded-vtpm
(Standard). + Deaktivieren Sie mit dem Flag--no-shielded-vtpm
.shielded-integrity-monitoring
: Das Integritätsmonitoring ist standardmäßig aktiviert. + Aktivieren Sie mit--shielded-integrity-monitoring
(Standard). + Deaktivieren Sie mit dem Flag--no-shielded-integrity-monitoring
.- Aktivieren Sie „Secure Boot“ mithilfe des Flags
Starten Sie die Instanz:
gcloud compute instances start VM_NAME
Ersetzen Sie
VM_NAME
durch den Namen der VM, die gestartet werden soll.
API
Beenden Sie die Instanz:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/stop
Ersetzen Sie Folgendes:
PROJECT_ID
: Projekt mit der VM, die beendet werden soll.ZONE
: Zone mit der VM, die beendet werden soll.VM_NAME
: VM, die beendet werden soll.
Verwenden Sie
instances.updateShieldedInstanceConfig
, um Shielded VM-Optionen für die Instanz zu aktivieren oder zu deaktivieren:PATCH https://compute.googleapis.com/compute/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/updateShieldedInstanceConfig { "enableSecureBoot": {true|false}, "enableVtpm": {true|false}, "enableIntegrityMonitoring": {true|false} }
Ersetzen Sie Folgendes:
PROJECT_ID
: Projekt mit der VM, für die Shielded VM-Optionen aktiviert oder deaktiviert werden sollen.ZONE
: Zone, die die VM enthält, für die Shielded VM-Optionen aktiviert oder deaktiviert werden sollen.VM_NAME
: VM, für die Shielded VM-Optionen aktiviert oder deaktiviert werden sollen.
enableSecureBoot
: Compute Engine aktiviert Secure Boot nicht standardmäßig, da nicht signierte Treiber und andere Software möglicherweise nicht kompatibel sind. Google empfiehlt, Secure Boot möglichst zu aktivieren.enableVtpm
: Compute Engine aktiviert das Virtual Trusted Platform Module (vTPM) standardmäßig.enableIntegrityMonitoring
: Compute Engine aktiviert das Integritätsmonitoring standardmäßig.Starten Sie die Instanz:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/start
Ersetzen Sie Folgendes:
PROJECT_ID
: Projekt mit der VM, die gestartet werden soll.ZONE
: Zone mit der VM, die gestartet werden soll.VM_NAME
: VM, die gestartet werden soll.