Auf dieser Seite erfahren Sie, wie Sie das Feature Shielded GKE-Knoten verwenden. Shielded GKE-Knoten bieten eine starke, überprüfbare Knotenidentität und -integrität, um die Sicherheit von GKE-Knoten (Google Kubernetes Engine) zu erhöhen.
Für GKE Autopilot-Cluster ist das Shielded GKE-Knoten-Feature standardmäßig aktiviert und kann nicht überschrieben werden. Für GKE-Standardcluster ist das Shielded GKE-Knoten-Feature standardmäßig aktiviert, kann aber überschrieben werden.
Shielded GKE-Knoten
Shielded GKE-Knoten werden zusätzlich zu Shielded VMs von Compute Engine erstellt. Ohne Shielded GKE-Knoten kann ein Angreifer eine Sicherheitslücke in einem Pod ausnutzen, um Bootstrap-Anmeldedaten zu stehen und die Identität von Knoten im Cluster anzunehmen. Dadurch erhält der Angreifer Zugriff auf Cluster-Secrets. Wenn Shielded GKE-Knoten aktiviert sind, prüft die GKE-Steuerungsebene Folgendes:
- Jeder Knoten im Cluster ist eine virtuelle Maschine, die im Rechenzentrum von Google ausgeführt wird.
- Jeder Knoten ist Teil einer verwalteten Instanzgruppe, die für den Cluster bereitgestellt ist.
- Dem Kubelet wird ein Zertifikat für den Knoten bereitgestellt, auf dem es ausgeführt wird.
Dadurch wird es einem Angreifer erschwert, die Identität eines Knotens in Ihrem Cluster anzunehmen, auch wenn er Bootstrap-Anmeldedaten des Knotens stehlen kann.
Knoten der GKE-Cluster-Steuerungsebene verwenden immer Shielded GKE-Knoten, auch wenn Sie das Feature für Ihren Cluster deaktivieren. Das Aktivieren oder Deaktivieren von Shielded GKE-Knoten wirkt sich nur darauf aus, ob die Worker-Knoten, auf denen Ihre Arbeitslasten ausgeführt werden, das Feature verwenden.
Preise
Für die Ausführung von Shielded GKE-Knoten fallen keine zusätzlichen Kosten an. Shielded GKE-Knoten generieren beim Start jedoch etwa 0,5 KB mehr Logs als Standardknoten. Weitere Informationen finden Sie auf der Preisseite für Cloud Logging.
Hinweise
Führen Sie die folgenden Aufgaben aus, bevor Sie beginnen:
- Aktivieren Sie die Google Kubernetes Engine API. Google Kubernetes Engine API aktivieren
- Wenn Sie die Google Cloud CLI für diese Aufgabe verwenden möchten, müssen Sie die gcloud CLI installieren und dann initialisieren. Wenn Sie die gcloud CLI bereits installiert haben, rufen Sie die neueste Version mit
gcloud components update
ab.
Shielded GKE-Knoten in einem neuen Cluster aktivieren
Sie können einen neuen Cluster mit aktivierten Shielded GKE-Knoten mithilfe der gcloud CLI oder Google Cloud Console erstellen.
gcloud
Geben Sie beim Erstellen eines neuen Clusters die Option --enable-shielded-nodes
an:
gcloud container clusters create CLUSTER_NAME \
--enable-shielded-nodes
Console
Rufen Sie in der Google Cloud Console die Seite Google Kubernetes Engine auf.
Klicken Sie auf add_box Erstellen.
Klicken Sie im Navigationsbereich unter Cluster auf Sicherheit.
Klicken Sie auf das Kästchen Shielded GKE-Knoten aktivieren.
Konfigurieren Sie den Cluster nach Bedarf.
Klicken Sie auf Erstellen.
Weitere Informationen zum Erstellen von Clustern finden Sie unter Cluster erstellen.
Shielded GKE-Knoten in einem vorhandenen Cluster aktivieren
Sie können Shielded GKE-Knoten in einem vorhandenen Cluster mithilfe des Google Cloud CLI oder der Google Cloud Console aktivieren.
Nachdem Sie Shielded GKE-Knoten aktiviert haben, werden die Worker-Knoten als Shielded VMs neu erstellt. Die Clusterknoten werden rollierend neu erstellt, um Ausfallzeiten zu minimieren.
gcloud
Geben Sie beim Aktualisieren des Clusters die Option --enable-shielded-nodes
an:
gcloud container clusters update CLUSTER_NAME \
--enable-shielded-nodes
Console
Rufen Sie in der Google Cloud Console die Seite Google Kubernetes Engine auf:
Klicken Sie auf den Namen des Clusters, den Sie ändern möchten.
Klicken Sie unter Sicherheit im Feld Shielded GKE-Knoten auf edit Shielded GKE-Knoten bearbeiten.
Klicken Sie auf das Kästchen Shielded GKE-Knoten aktivieren.
Klicken Sie auf Änderungen speichern.
Aktivierung von Shielded GKE-Knoten prüfen
Sie prüfen, ob Ihr Cluster Shielded GKE-Knoten mit dem Google Cloud CLI oder der Google Cloud Console verwendet.
gcloud
Cluster beschreiben:
gcloud container clusters describe CLUSTER_NAME
Wenn Shielded GKE-Knoten aktiviert sind, sind in der Ausgabe des Befehls folgende Zeilen enthalten:
shieldedNodes:
enabled: true
Console
So prüfen Sie, ob ein Cluster Shielded GKE-Knoten verwendet:
Rufen Sie in der Google Cloud Console die Seite Google Kubernetes Engine auf.
Klicken Sie auf den Namen des Clusters, den Sie prüfen möchten.
Prüfen Sie im Feld Shielded GKE-Knoten unter Sicherheit, ob Shielded GKE-Knoten Aktiviert ist.
Sie können auch die Integrität der zugrunde liegenden Shielded VMs Ihrer Knoten prüfen. Informationen zum Verfahren finden Sie unter Integrität von Shielded VM-Instanzen überwachen.
Shielded GKE-Knoten deaktivieren
Sie können Shielded GKE-Knoten über das Google Cloud CLI oder die Google Cloud Console deaktivieren.
gcloud
Geben Sie beim Aktualisieren des Clusters die Option --no-enable-shielded-nodes
an:
gcloud container clusters update CLUSTER_NAME \
--no-enable-shielded-nodes
Console
Rufen Sie in der Google Cloud Console die Seite Google Kubernetes Engine auf:
Klicken Sie auf den Namen des Clusters, den Sie ändern möchten.
Klicken Sie unter Sicherheit im Feld Shielded GKE-Knoten auf edit Shielded GKE-Knoten bearbeiten.
Deaktivieren Sie das Kästchen Shielded GKE-Knoten aktivieren.
Klicken Sie auf Änderungen speichern.
Wenn Sie Shielded GKE-Knoten deaktiviert haben, werden die Knoten als normale, nicht Shielded VMs neu erstellt. Die Clusterknoten werden rollierend neu erstellt, um Ausfallzeiten zu minimieren.
Knotenintegrität
Sie können optional Knotenintegritätsprüfungen für Knotenpools konfigurieren, um einen verbesserten Rootkit- und Bootkit-Schutz für Ihre Knoten bereitzustellen. Shielded GKE-Knoten, Secure Boot sowie das Integritätsmonitoring sind voneinander unabhängig und lassen sich einzeln aktivieren und deaktivieren.
Secure Boot
Secure Boot ist eine Knotenpooleinstellung, die in GKE standardmäßig deaktiviert ist, da unsignierte Kernel-Module von Drittanbietern sonst nicht geladen werden können.
Wenn Sie keine unsignierten Kernel-Module von Drittanbietern verwenden, können Sie Secure Boot mit der Google Cloud CLI oder der Google Cloud Console aktivieren.
gcloud
So aktivieren Sie Secure Boot beim Erstellen eines Clusters:
gcloud container clusters create CLUSTER_NAME \
--shielded-secure-boot
So aktivieren Sie Secure Boot beim Erstellen eines Knotenpools:
gcloud container node-pools create POOL_NAME \
--shielded-secure-boot
Secure Boot ist standardmäßig deaktiviert. Sie können die Einstellung beim Erstellen eines Clusters oder Knotenpools mit der Option --no-shielded-secure-boot
explizit deaktivieren.
Console
So aktivieren Sie Secure Boot beim Erstellen eines Knotenpools:
Rufen Sie in der Google Cloud Console die Seite Google Kubernetes Engine auf:
Klicken Sie auf den Namen des Clusters, den Sie ändern möchten.
Klicken Sie auf Knotenpool hinzufügen add_box.
Klicken Sie im Menü Navigation auf Sicherheit.
Klicken Sie unter Shielded-Optionen das Kästchen Sicherer Start aktivieren an.
Klicken Sie auf Erstellen.
Integritätsmonitoring
Integritätsmonitoring ist eine Knotenpooleinstellung, die in GKE standardmäßig aktiviert ist. Sie können das Integritätsmonitoring mit dem Google Cloud CLI oder der Google Cloud Console deaktivieren.
gcloud
So deaktivieren Sie das Integritätsmonitoring für Systemkomponenten beim Erstellen eines Clusters:
gcloud container clusters create CLUSTER_NAME \
--no-shielded-integrity-monitoring
So deaktivieren Sie das Integritätsmonitoring für Systemkomponenten beim Erstellen eines Knotenpools:
gcloud container node-pools create POOL_NAME \
--no-shielded-integrity-monitoring
Das Integritätsmonitoring ist standardmäßig aktiviert. Sie können es beim Erstellen eines Clusters oder eines Knotenpools mit der Option --shielded-integrity-monitoring
explizit aktivieren.
Console
So deaktivieren Sie das Integritätsmonitoring beim Erstellen eines Knotenpools:
Rufen Sie in der Google Cloud Console die Seite Google Kubernetes Engine auf:
Klicken Sie auf den Namen des Clusters, den Sie ändern möchten.
Klicken Sie auf Knotenpool hinzufügen add_box.
Klicken Sie im Navigationsbereich auf Sicherheit.
Entfernen Sie unter Shielded-Optionen das Häkchen bei Integritätsmonitoring aktivieren.