Aktualisieren des Serverzertifikats für den Netzwerkcontroller
Wichtig
Diese Version von Virtual Machine Manager (VMM) hat das Supportende erreicht. Sie sollten ein Upgrade auf VMM 2019 durchführen.
Der Netzwerkcontroller (NC) verwendet ein Zertifikat für die Northbound-Kommunikation mit REST-Clients (z.B. VMM) und die Southbound-Kommunikation mit Hyper-V-Hosts und Software-Lastenausgleichsmodulen.
Sie können dieses Zertifikat in den folgenden Szenarien ändern oder aktualisieren, nachdem Sie den Netzwerkcontroller bereitgestellt haben.
Das Zertifikat ist abgelaufen.
Sie möchten von einem selbstsignierten Zertifikat zu einem Zertifikat wechseln, das von einer Zertifizierungsstelle (Certificate Authority, CA) ausgestellt wird.
Hinweis
Wenn Sie das vorhandene Zertifikat mit dem gleichen Schlüssel erneuern, sind diese Schritte nicht erforderlich.
Vorbereitung
Stellen Sie sicher, dass Sie ein neues SSL-Zertifikat mit dem REST-Namen des vorhandenen Netzwerkcontrollers erstellen. Weitere Informationen
Aktualisieren des Serverzertifikats
Falls das Zertifikat selbstsigniert ist, gehen Sie wie folgt vor:
- Zertifikat mit privatem Schlüssel: Exportieren Sie das Zertifikat, und importieren Sie es in den persönlichen Speicher aller NC-Knoten.
- Zertifikat ohne privaten Schlüssel: Exportieren Sie das Zertifikat, und importieren Sie es in den Stammspeicher aller NC-Knoten.
Wenn das Zertifikat ein von der Zertifizierungsstelle ausgestelltes Zertifikat ist, importieren Sie es in den persönlichen Speicher aller Netzwerkcontrollerknoten.
Hinweis
Entfernen Sie NICHT das aktuelle Zertifikat aus den NC-Knoten. Sie sollten das aktualisierte Zertifikat überprüfen, bevor Sie das vorhandene entfernen. Fahren Sie mit den weiteren Schritten zum Aktualisieren des Zertifikats fort.
Aktualisieren Sie das Serverzertifikat, indem Sie den folgenden PowerShell-Befehl auf einem der NC-Knoten ausführen.
$certificate = Get-ChildItem -Path Cert:\LocalMachine\My | Where {$_.Thumbprint -eq “Thumbprint of new certificate”} Set-NetworkController -ServerCertificate $certificateAktualisieren Sie das Zertifikat zur Verschlüsselung der im NC gespeicherten Anmeldeinformationen, indem Sie den folgenden Befehl auf einem der NC-Knoten ausführen.
$certificate = Get-ChildItem -Path Cert:\LocalMachine\My | Where {$_.Thumbprint -eq “Thumbprint of new certificate”} Set-NetworkControllerCluster -CredentialEncryptionCertificate $certificateRufen Sie eine Server-REST-Ressource ab, indem Sie den folgenden PowerShell-Befehl auf einem der NC-Knoten ausführen.
Get-NetworkControllerServer -ConnectionUri <REST uri of your deployment>Navigieren Sie in der Server-REST-Ressource zum Objekt Anmeldeinformationen, und stellen Sie sicher, dass die Anmeldeinformationen des Typs X509Certificate einen Wert aufweisen, der dem Zertifikatfingerabdruck entspricht. Beachten Sie die Ressourcen-ID der Anmeldeinformation.
"Connections": { { "ManagementAddresses":[ “contoso.com" ], "CredentialType": "X509Certificate", "Protocol": null, "Port": null, "Credential": { "Tags": null, "ResourceRef": "/credentials/<credential resource Id>, "InstanceId": "00000000-0000-0000-0000-000000000000", … … } } }Aktualisieren Sie die oben abgerufene REST-Ressource der Anmeldeinformationen vom Typ X509Certificate mit dem Fingerabdruck des neuen Zertifikats.
Führen Sie dieses PowerShell-Cmdlet auf einem beliebigen NC-Knoten aus.
$cred=New-Object Microsoft.Windows.Networkcontroller.credentialproperties $cred.type="X509Certificate" $cred.username="" $cred.value="<thumbprint of the new certificate>" New-NetworkControllerCredential -ConnectionUri <REST uri of the deployment> -ResourceId <credential resource Id> -Properties $credWenn es sich bei dem neuen Zertifikat um ein selbstsigniertes Zertifikat handelt, stellen Sie das Zertifikat (ohne den privaten Schlüssel) im vertrauenswürdigen Stammzertifikatsspeicher aller Hyper-V-Hosts und virtuellen MUX-Computer mit Software-Lastenausgleichsmodulen bereit.
Stellen Sie das NC-Zertifikat (ohne den privaten Schlüssel) im vertrauenswürdigen Stammzertifikatspeicher des VMM-Computers mit dem folgenden PowerShell-Cmdlet bereit:
$certificate = Get-SCCertificate -ComputerName "NCRestName" $networkservice = Get-SCNetworkService | Where {$_.IsNetworkController -eq $true} Set-SCNetworkService -ProvisionSelfSignedCertificatesforNetworkService $true -Certificate $certificate -NetworkService $networkservice- NetworkService ist der Netzwerkcontrollerdienst, Certificate ist das neue NC-Serverzertifikat.
- ProvisionSelfSignedCertificatesforNetworkService ist $true, wenn Sie auf ein selbstsigniertes Zertifikat aktualisieren.
Stellen Sie sicher, dass die Konnektivität mit dem aktualisierten Zertifikat einwandfrei funktioniert.
Sie können jetzt das vorherige Zertifikat aus den NC-Knoten entfernen.
Nächste Schritte
Überprüfen Sie die NC-Bereitstellung, um sicherzustellen, dass diese erfolgreich war.