Dela via


Konfigurera TLS för VMM

Viktigt

Den här versionen av Virtual Machine Manager (VMM) har nått slutet av supporten. Vi rekommenderar att du uppgraderar till VMM 2022.

I den här artikeln beskrivs hur du konfigurerar TLS-protokollversion 1.2 (Transport Security Layer) med System Center – Virtual Machine Manager -servern (VMM).

Anteckning

Virtual Machine Manager använder det protokoll som konfigurerats på operativsystemnivå. Om t.ex. TLS 1.0, TLS 1.1 och TLS 1.2 är aktiverade på operativsystemnivå väljer Virtual Machine Manager något av de tre protokollen i följande prioritetsordning:

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

Schannel SSP väljer sedan det mest föredragna autentiseringsprotokollet som klienten och servern kan stödja.

Innan du börjar

  • Säkerhetskorrigeringar bör vara uppdaterade på VMM-servern och den server som kör VMM-databasen.
  • VMM-servern ska köra .NET version 4.6. Följ de här anvisningarna för att avgöra vilken version av .NET som är installerad.
  • För att arbeta med TLS 1.2 genererar System Center-komponenter sha1- eller SHA2-självsignerade certifikat. Om SSL-certifikat från en certifikatutfärdare (CA) används bör de använda SHA1 eller SHA2.

Installera en SQL Server uppdatering för TLS 1.2-stöd

  1. Öppna KB-3135244.
  2. Ladda ned och installera uppdateringen för din SQL Server version.
    • Du behöver inte den här uppdateringen om du kör SQL Server 2016.
    • SQL Server 2008 R2 stöder inte TLS 1.2.

Konfigurera VMM-servern att använda TLS 1.2

Inaktivera alla SCHANNEL-protokoll förutom TLS 1.2.

Ändra registret manuellt

  1. Öppna registry-Editor och gå till HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols.
  2. Högerklicka på Protokoll och välj Ny>nyckel. Ange tangenten och tryck på Retur. Utför den här proceduren för att skapa följande nycklar:
    • SSL3
    • TLS 1.0
    • TLS 1.1
    • TLS 1.2
  3. När du har skapat dessa nycklar måste du skapa klient- och servernycklarna under dem.
    • För SSL3 väljer du Ny>nyckel. Ange Klient och tryck på Retur. För SSL3 väljer du ny>nyckel igen. Ange sedan Server och tryck på Retur.
    • Upprepa åtgärden för att skapa klient - och servernycklarna under TLS 1.0, TLS 1.1 och TLS 1.2.
  4. När du har skapat klient- och servernycklarna måste du skapa DWORD-värden under dem för att aktivera och inaktivera protokoll. Gör på följande sätt:
    • Aktivera TLS 1.2-protokollet. Det gör du genom att i TLS 1.2, under Klientnyckeln , skapa DWORD-värdet DisabledByDefault och ange värdet till 0. Skapa nu ett DWORD-värde aktiverat och ange värdet till 1. Skapa samma DWORD-värden under servernyckeln .
    • Inaktivera nu de andra protokollen. Det gör du genom att skapa DWORD-värdet DisabledByDefault under klientnyckeln i SSL3, TLS 1.0 och TLS 1.1 och ange värdet till 1. Skapa nu ett DWORD-värde aktiverat och ange värdet till 0. Skapa samma DWORD-värden under servernyckeln .

Ändra registret med ett PowerShell-skript

I stället för att ändra registervärdena manuellt kan du använda följande PowerShell-skript.

$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

Konfigurera VMM att använda TLS 1.2

  1. Öppna registereditorn på VMM-servern. Gå till HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ . NetFramework\v4.0.30319.
  2. Skapa DWORD-värdet SchUseStrongCrypto och ange värdet till 1.
  3. Gå nu till HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft
    . NetFramework\v4.0.30319
    .
  4. Under den här platsen skapar du samma DWORD-värde SchUseStrongCrypto och anger värdet till 1.
  5. Starta om servern för att inställningarna ska börja gälla.

Ändra registret med ett PowerShell-skript

Du kan ändra registerinställningarna med hjälp av följande PowerShell-skript.

# 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ästa steg

Läs mer om TLS 1.2-protokollet.