Freigeben über


Einrichten von TLS für VMM

Wichtig

Diese Version von Virtual Machine Manager (VMM) hat das Ende des Supports erreicht. Es wird empfohlen, ein Upgrade auf VMM 2022 durchzuführen.

In diesem Artikel wird beschrieben, wie das Transport Security Layer-Protokoll (TSL) Version 1.2 mit dem VMM-Server (Virtual Machine Manager) von System Center eingerichtet wird.

Hinweis

Virtual Machine Manager verwendet das Protokoll, das auf Betriebssystemebene konfiguriert ist. Wenn TLS 1.0, TLS 1.1 und TLS 1.2 beispielsweise auf Betriebssystemebene aktiviert sind, wählt Virtual Machine Manager eines der drei Protokolle in der folgenden Reihenfolge aus:

  1. TLS-Version 1.2
  2. TLS-Version 1.1
  3. TLS-Version 1.0

Der Schannel SSP wählt dann das bevorzugte Authentifizierungsprotokoll, das Client und Server unterstützen können.

Vorbereitung

  • Sicherheitskorrekturen sollten auf dem VMM-Server und auf dem Server, auf dem die VMM-Datenbank ausgeführt wird, auf dem neuesten Stand sein.
  • Auf dem VMM-Server sollte .NET Version 4.6 ausgeführt werden. Befolgen Sie diese Anweisungen, um zu bestimmen, welche .NET-Version installiert ist.
  • Um mit TLS 1.2 zu arbeiten, generieren System Center-Komponenten selbstsignierte SHA1- oder SHA2-Zertifikate. Wenn SSL-Zertifikate von Zertifikaten einer Zertifizierungsstelle verwendet werden, sollten sie SHA1 und SHA2 verwenden.

Installieren eines SQL Server-Updates zur Unterstützung von TSL 1.2

  1. Öffnen Sie KB 3135244.
  2. Laden Sie das Update für Ihre SQL Server-Version herunter, und installieren Sie es.
    • Dieses Update ist nicht erforderlich, wenn Sie SQL Server 2016 ausführen.
    • SQL Server 2008 R2 unterstützt nicht TLS 1.2.

Konfigurieren des VMM-Servers für die Verwendung von TLS 1.2

Deaktivieren Sie alle SCHANNEL-Protokolle, außer für TLS 1.2.

Manuelles Bearbeiten der Registrierung

  1. Öffnen Sie den Registrierungs-Editor, und navigieren Sie zu HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols.
  2. Klicken Sie mit der rechten Maustaste auf Protokoll und dann auf NeuSchlüssel. Geben Sie die Eingabetaste ein, und drücken Sie die EINGABETASTE. Führen Sie dieses Verfahren durch, um die folgenden Schlüssel zu erstellen:
    • SSL3
    • TLS 1.0
    • TLS 1.1
    • TLS 1.2
  3. Nachdem Sie diese Schlüssel erstellt haben, müssen Sie die Schlüssel Client und Server unter diesen erstellen.
    • Wählen Sie für SSL3NeuSchlüssel aus. Geben Sie Client ein , und drücken Sie die EINGABETASTE. Wählen Sie für SSL3 erneut NeuSchlüssel aus. Geben Sie dann Server ein, und drücken Sie die EINGABETASTE.
    • Wiederholen Sie die Aktion, um die Schlüssel Client und Server unter TLS 1.0, TLS 1.1 und TLS 1.2 zu erstellen.
  4. Nachdem Sie die Schlüssel Client und Server erstellt haben, müssen Sie DWORD-Werte unter diesen Schlüsseln erstellen, um Protokolle zu aktivieren und zu deaktivieren. Gehen Sie hierzu folgendermaßen vor:
    • Aktivieren Sie das TLS 1.2-Protokoll. Erstellen Sie hierzu in TLS 1.2 unter dem Client-Schlüssel den DWORD-Wert DisabledByDefault, und legen Sie den Wert auf 0 (null) fest. Erstellen Sie nun den DWORD-Wert Enabled (Aktiviert), und legen Sie den Wert auf 1 fest. Erstellen Sie die gleichen DWORD-Werte unter dem Server-Schlüssel.
    • Deaktivieren Sie nun die anderen Protokolle. Erstellen Sie hierzu in SSL3, TLS 1.0 und TLS 1.1 unter dem Client-Schlüssel den DWORD-Wert DisabledByDefault, und legen Sie den Wert auf 1 fest. Erstellen Sie nun den DWORD-Wert Enabled (Aktiviert), und legen den Wert auf 0 (null) fest. Erstellen Sie die gleichen DWORD-Werte unter dem Server-Schlüssel.

Bearbeiten der Registrierung mit einem PowerShell-Skript

Statt die Registrierungswerte manuell zu ändern, können Sie das folgende PowerShell-Skript verwenden.

$ProtocolList       = @("SSL 2.0", "SSL 3.0", "TLS 1.0", "TLS 1.1", "TLS 1.2")
$ProtocolSubKeyList = @("Client", "Server")
$DisabledByDefault  = "DisabledByDefault"
$registryPath       = "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\"

foreach ($Protocol in $ProtocolList)
{
	foreach ($key in $ProtocolSubKeyList)
	{
		$currentRegPath = $registryPath + $Protocol + "\" + $key
		Write-Output "Current Registry Path: `"$currentRegPath`""

		if (!(Test-Path $currentRegPath))
		{
			Write-Output " `'$key`' not found: Creating new Registry Key"
			New-Item -Path $currentRegPath -Force | out-Null
		}
		if ($Protocol -eq "TLS 1.2")
		{
			Write-Output " Enabling - TLS 1.2"
			New-ItemProperty -Path $currentRegPath -Name $DisabledByDefault -Value "0" -PropertyType DWORD -Force | Out-Null
			New-ItemProperty -Path $currentRegPath -Name 'Enabled' -Value "1" -PropertyType DWORD -Force | Out-Null
		}
		else
		{
			Write-Output " Disabling - $Protocol"
			New-ItemProperty -Path $currentRegPath -Name $DisabledByDefault -Value "1" -PropertyType DWORD -Force | Out-Null
			New-ItemProperty -Path $currentRegPath -Name 'Enabled' -Value "0" -PropertyType DWORD -Force | Out-Null
		}
		Write-Output " "
	}
}

Exit 0

Konfigurieren von VMM zur Verwendung von TLS 1.2

  1. Öffnen Sie den Registrierungs-Editor auf dem VMM-Server. Navigieren Sie zu HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ .NetFramework\v4.0.30319.
  2. Erstellen Sie den DWORD-Wert SchUseStrongCrypto, und legen Sie den Wert auf 1 fest.
  3. Wechseln Sie jetzt zu HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft
    .NetFramework\v4.0.30319
    .
  4. Erstellen Sie unter diesem Speicherort denselben DWORD-Wert SchUseStrongCrypto , und legen Sie den Wert auf 1 fest.
  5. Starten Sie den Server neu, damit die Einstellungen in Kraft treten.

Bearbeiten der Registrierung mit einem PowerShell-Skript

Sie können die Registrierungseinstellungen mithilfe des folgenden PowerShell-Skripts bearbeiten.

# Tighten up the .NET Framework
$NetRegistryPath = "HKLM:\SOFTWARE\Microsoft\.NETFramework\v4.0.30319"
New-ItemProperty -Path $NetRegistryPath -Name "SchUseStrongCrypto" -Value "1" -PropertyType DWORD -Force | Out-Null

$NetRegistryPath = "HKLM:\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319"
New-ItemProperty -Path $NetRegistryPath -Name "SchUseStrongCrypto" -Value "1" -PropertyType DWORD -Force | Out-Null

Nächste Schritte

Hier erhalten Sie weitere Informationen zum TLS 1.2-Protokoll.