Einrichten von TLS für VMM

Wichtig

Diese Version von Virtual Machine Manager (VMM) hat das Supportende erreicht. Sie sollten ein Upgrade auf VMM 2019 durchfü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.

Vorbereitung

  • VMM sollte VMM 2016 mit Updaterollup 4 oder höher ausführen.
  • Sicherheitsfixes sollten auf dem VMM-Server sowie auf dem Server, auf dem die VMM-Datenbank ausgeführt wird, auf dem neuesten Stand sein.
  • Der VMM-Server sollte .NET Version 4.6 ausführen. 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 den Schlüssel 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"
$Enabled = "Enabled"
$registryPath = "HKLM:\\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\"

foreach($Protocol in $ProtocolList)
{
    Write-Host " In 1st For loop"
        foreach($key in $ProtocolSubKeyList)
        {         
            $currentRegPath = $registryPath + $Protocol + "\" + $key
            Write-Host " Current Registry Path $currentRegPath"
            if(!(Test-Path $currentRegPath))
            {
                Write-Host "creating the registry"
                    New-Item -Path $currentRegPath -Force | out-Null             
            }
            if($Protocol -eq "TLS 1.2")
            {
                Write-Host "Working for 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-Host "Working for other 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
            }     
    }
}
 
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 an diesem Speicherort den gleichen 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.