Tags: vSphere, Cluster, Sicherheit, Verschlüsselung
Die vSphere Trust Authority (vTA) besteht aus dem Verwaltungs-Cluster und einem vertrauenswürdigen Schlüsselanbieter. Alle normalen ESXi-Cluster werden gegen den vTA-Cluster bestätigt. Diese Anleitung beschreibt, wie man eine solche Infrastruktur einrichtet, um die Integrität der Hosts zu prüfen.
Zum Einrichten von vTA braucht man zunächst einen Trust-Authority-Administrator. Hierbei handelt es sich um einen User, welcher der vSphere-Gruppe TrustedAdmins angehört. Dieser Benutzer wird dann zum Administrator der Vertrauensberechtigung. VMware empfiehlt, einen vom vCenter-Server-Administrator getrennten Benutzer zu verwenden.
Administrator von Vertrauensberechtigungen einrichten
Den Administrator von Vertrauensberechtigungen muss man sowohl dem vTA-Cluster als auch dem vertrauenswürdigen Cluster hinzufügen. Dazu klickt man im Menü Verwaltung im Abschnitt Single Sign-On auf Benutzer und Gruppen, wechselt zum Tab Gruppen und öffnet die Gruppe TrustedAdmins.
Dort kann man dann mit einem Klick auf Mitglieder hinzufügen einen User anlegen, hier heißt er trustedadmin.
Die Gruppenmitgliedschaft wird von ESXi mithilfe der SAML-Token-Authentifizierung überprüft. Ist das erledigt, dann kann sich der vTA-Administrator um das Aktivieren und Konfigurieren von vSphere Trust Authority kümmern.
Schritte zum Einrichten von vTA
Der Workflow zur Einrichtung von vSphere Trust Authority sieht in der Übersicht wie folgt aus:
- Exportieren der Identität der zu bescheinigenden Hosts
- Aktivieren der vertrauenswürdigen Host-Dienste in einem vTA-Cluster
- Importieren der Identität der attestierenden Hosts in den Trust Authority Cluster
- Konfigurieren eines vertrauenswürdigen Schlüsselanbieters
- Exportieren der Identität des Trust Authority-Clusters
- Importieren der vTA-Cluster-Identität in den Attestierungs-Cluster
- Konfigurieren des vTA-Clusters als Schlüsselanbieter für den Attestierungs-Cluster
vTA mit PowerCLI konfigurieren
Die Konfiguration selbst ist bislang allerdings nur via PowerCLI möglich. Hierzu verbindet man sich zunächst mit dem zu attestierenden Host:
Connect-VIServer -server <ESXi-Host-FQDN> -User root -Password <Password>
Den Host-Namen parkt man dann der Einfachheit halber gleich in einer Variablen.
$vmhost = Get-VMHost
Dann überprüft man den TPM-Endorsement-Schlüssel des ESXi-Hosts und packt auch diesen in eine neue Variable:
$tpm2 = Get-Tpm2EndorsementKey -VMHost $vmhost
Danach exportiert man mithilfe des TPM-Endorsement-Schlüssels das CA-Zertifikat des TPM-Geräts in ein Verzeichnis auf dem Arbeitsplatzrechner, in unserem Beispiel nach D:\vTA\:
Export-Tpm2CACertificate -Tpm2EndorsementKey $tpm2 -FilePath D:\vTA\ca-cert.zip
Anschließend exportiert man die ESXi-Image-Metadaten vom Host.
Export-VMHostImageDb -VMHost $vmhost -FilePath D:\vTA\image.tgz
Vertrauenswürdigen Benutzerprinzipal exportieren
Im folgenden Schritt muss man den vertrauenswürdigen Benutzerprinzipal aus dem vCenter-Server, der den vertrauenswürdigen (attestierten) Cluster verwaltet, exportieren. Diese Informationen werden dann in das vCenter importiert, das den vTA-Cluster verwaltet.
Dazu verbindet man sich zunächst per PowerCLI zum vCenter-Server, das den Trusted-Cluster (attested) verwaltet.
Connect-VIServer -server <VCSA-TrustedCluster-FQDN> -User trustedadmin@vsphere.local `
-Password <Password>
Dann exportiert man den vertrauenswürdigen Benutzerprinzipal in das gleiche Verzeichnis auf dem Arbeitsrechner, hier D:\vTA\
Export-TrustedPrincipal -FilePath D:\vTA\principal.json
Trust Authority Services aktivieren
Nun kann man sich dem Aktivieren der Trust Authority Services widmen. Dazu verbindet man sich unter Zuhilfenahme der Credentials des Trusted Administrator erneut per PowerCLI zum vCenter, das den vTA-Cluster verwaltet:
Connect-VIServer -server <VCSA-TrustAuhorityCluster-FQDN> `
-User trustedadmin@vsphere.local -Password <Password>
Dort ruft man zunächst den aktuellen Status der vertrauenswürdigen Dienste des vTA-Clusters ab:
Get-TrustAuthorityCluster "<Cluster-Name- TrustAuhorityCluster>"
Danach weist man den aktuellen Status der vertrauenswürdigen Dienste des vTA-Clusters einer Variablen zu
$TAcluster = Get-TrustAuthorityCluster "<Cluster-Name- TrustAuhorityCluster>"
und aktiviert dann die vertrauenswürdigen Dienste im vTA-Cluster:
Set-TrustAuthorityCluster -TrustAuthorityCluster $TAcluster -State Enabled
Hier muss man mit "y" bestätigen, um den vTA-Cluster zu aktivieren.
Vertrauenswürdige Hosts in den vTA-Cluster importieren
Im vierten Schritt importiert man dann die vertrauenswürdigen Host-Informationen in den vTA-Cluster. Auch das geschieht per PowerCLI:
New-TrustAuthorityPrincipal -TrustAuthorityCluster $TAcluster `
-FilePath D:\vTA\principal.json
Um zu überprüfen, ob der vorherige Import erfolgreich war, ruft man die Informationen am besten gleich wieder ab:
Get-TrustAuthorityPrincipal -TrustAuthorityCluster $TAcluster
Jetzt muss man noch das TPM-CA-Zertifikat vom vertrauenswürdigen Cluster in den vTA-Cluster importieren:
New-TrustAuthorityTpm2CACertificate -Name tpmca -TrustAuthorityCluster $TAcluster `
-FilePath D:\vTA\ca-cert.zip
Anschließend importiert man die ESXi-Image-Metadaten aus dem vertrauenswürdigen Cluster in den vTA-Cluster:
New-TrustAuthorityVMHostBaseImage -TrustAuthorityCluster $TAcluster `
-FilePath D:\vTA\image.tgz
Dieser Schritt bestimmt, welche Versionen von ESXi vom Trust Authority Cluster als vertrauenswürdig eingestuft werden.
Vertrauenswürdigen Schlüsselanbieter im vTA-Cluster anlegen
Nun erstellt man den vertrauenswürdigen Schlüsselanbieter im vTA-Cluster, damit dieser die Verschlüsselungsschlüssel von einem Schlüsselverwaltungs-Server (KMS) anfordern kann. Dazu gibt man den Namen des Schlüsselanbieters an, hier "TA-Cluster-KMS1".
New-TrustAuthorityKeyProvider -TrustAuthorityCluster $TAcluster -MasterKeyId 1 `
-Name TA-Cluster-KMS1 -KmipServerAddress <IP-Adresse KMIP-Server>
Die so genannte MasterKeyId hat normalerweise die Form einer längeren UUID. Da wir für dieses Beispiel PyKMIP als KMS verwenden, ist die ID etwas kürzer. In der Praxis hängt der Wert hängt vom verwendeten KMS-Anbieter ab. Der Einfachheit halber packen wir zunächst den Schlüsselanbieter in eine Variable:
$kp = Get-TrustAuthorityKeyProvider -TrustAuthorityCluster $TAcluster
Dann erstellt man das Client-Zertifikat des vertrauenswürdigen Schlüsselanbieters.
New-TrustAuthorityKeyProviderClientCertificate -KeyProvider $kp
Ob das erfolgreich war, zeigt der Aufruf:
Get-TrustAuthorityKeyProviderServerCertificate -KeyProviderServer $kp.KeyProviderServers
Auch das KMS-Zertifikat parken wir in einer Variablen:
$cert = Get-TrustAuthorityKeyProviderServerCertificate `
-KeyProviderServer $kp.KeyProviderServers
Nun fügt man das KMS-Zertifikat dem vertrauenswürdigen Schlüsselanbieter mit einem vertrauenswürdigen Status hinzu
Add-TrustAuthorityKeyProviderServerCertificate -ServerCertificate $cert
Danach exportieren wir die Einstellungen für den vTA-Cluster. Diese Informationen werden dann in den vertrauenswürdigen Cluster importiert
Export-TrustAuthorityServicesInfo -TrustAuthorityCluster $TAcluster `
-FilePath D:\vTA\cluster_settings.json
Um eine Verbindung zum vTA-Cluster herzustellen, importiert man dessen Einstellungen in den Cluster der vertrauenswürdigen Hosts. Hier stellt man wieder mithilfe von PowerCLI eine Verbindung zu dem vCenter Server her, der den vertrauenswürdigen Cluster verwaltet:
Connect-VIServer -server <VCSA-TrustedCluster-FQDN> `
-User trustedadmin@vsphere.local -Password <Password>
Auch hier stecken wir den vertrauenswürdigen Cluster zunächst in eine Variable:
$TrustedCluster = Get-TrustedCluster "<Cluster-Name- TrustAuhorityCluster>"
Dann importiert man die Informationen de vTA-Clusters:
Import-TrustAuthorityServicesInfo –FilePath D:\vTA\cluster_settings.json
Danach aktiviert man den vertrauenswürdigen Cluster:
Set-TrustedCluster -TrustedCluster $TrustedCluster -State Enabled
Anbieter für vertrauenswürdige Schlüssel
Zum Schluss konfiguriert man den Anbieter für vertrauenswürdige Schlüssel für den Cluster mit den vertrauenswürdigen Hosts so, dass dieser Verschlüsselungsschlüssel empfangen kann. Das erfolgt wieder im vSphere-Client des vCenter-Servers, das den vertrauenswürdigen Cluster verwaltet.
Hierzu markiert man das logische vCenter-Objekt in der Host & Cluster-Ansicht, navigiert zur Registerkarte Konfigurieren und wählt im Abschnitt Sicherheit die Option Schlüsselanbieter aus. Dort klickt man dann auf Vertrauenswürdige Schlüsselanbieter hinzufügen. Alle verfügbaren Anbieter sollten den Status Verbunden aufweisen.
Fazit
Die vSphere Trust Authority ist eine neue und grundlegende Technologie, mit der man auf einer sehr "tiefen" Ebene Vertrauen in die verwendete Hardware- und Software-Konfigurationen implementieren kann.
Die vSphere Trust Authority erhöht allerdings die Komplexität durch einen separaten Cluster und viele zusätzliche Konfigurationsschritte. In kleinen Umgebungen ist der Aufwand möglicherweise unverhältnismäßig.
Sicherheitsorientierte Nutzer mit größeren Bereitstellungen werden jedoch erkennen, dass das neue Feature viel Potenzial hat. Außerdem kann ein einziger vTA-Verwaltungs-Cluster tausende Hosts und Cluster zu bestätigen.
Die Kosten und die Komplexität dieses Clusters werden daher durch das geringere Risiko und das höhere Vertrauen ausgeglichen, das vTA für das gesamte Unternehmen mit sich bringt.
Täglich Know-how für IT-Pros mit unserem Newsletter
Seine Themenschwerpunkte sind Virtualisierung und Cloud Computing, speziell VMware, Amazon Web Services, Google Cloud und Microsoft Azure. Thomas ist zertifizierter VMware Professional, Advanced Professional und wurde von VMware in den Jahren 2016, 2017, 2018, 2019 und 2020 mit dem Blogger-Status vExpert ausgezeichnet.
Thomas ist außerdem zertifizierter AWS Solutions Architect, Sysops Engineer und Devops Engineer sowie Microsoft Certified Azure Administrator.
Thomas führt aktuell jeden zweiten Montag einen 4-tägigen Grundlagenkurs in Cloud Computing mit AWS via Zoom-Meeting durch. Weitere Informationen und Anmeldung über sein AWS-Blog.
Ähnliche Beiträge
- vSphere Trust Authority: ESXi-Hosts über separaten Verwaltungs-Cluster absichern
- Windows Admin Center 2110.2: Support für HSTS, Update für Cluster-Extension
- Neu in vSphere 7 Update 3: NSX-Integration, NVMe über TCP, Update für DRS, Precision Time
- AD-Zertifikatsdienste (AD CS) von SHA-1 auf SHA-2 migrieren: Gründe und Hindernisse
- vSphere mit Tanzu auf Basis von vSphere-Networking (Distributed vSwitch) einrichten
Weitere Links