Partilhar via


Configurar o TLS 1.3 para VMM

Este artigo descreve como configurar o protocolo TLS (Transport Security Layer) versão 1.3 com o servidor VMM (Virtual Machine Manager) do System Center.

Observação

O Virtual Machine Manager usará o protocolo configurado no nível do sistema operacional. Por exemplo, se o TLS 1.2 e o TLS 1.3 estiverem habilitados no nível do sistema operacional, o Virtual Machine Manager selecionará um dos dois protocolos na seguinte ordem de preferência:

  1. TLS versão 1.3
  2. TLS versão 1.2

O SSP Schannel seleciona o protocolo de autenticação preferencial que o cliente e o servidor podem dar suporte.

Antes de começar

  • As correções de segurança devem estar atualizadas no servidor do VMM e no servidor que executa o banco de dados do VMM.
  • O servidor VMM deve estar executando o .NET versão 4.6 ou posterior. Siga estas instruções para determinar qual versão do .NET está instalada.
  • • TLS 1.3. requer TLS 1.2. a ser configurado.
  • Para trabalhar com o TLS 1.3, os componentes do System Center geram certificados autoassinados SHA1 ou SHA2. Se forem usados certificados SSL de uma autoridade de certificação, eles deverão usar SHA1 ou SHA2.

Configurar o servidor VMM para usar o TLS 1.3

Desative todos os protocolos SCHANNEL, exceto TLS 1.3 e 1.2.

Modificar manualmente o registro

  1. Abra o Editor do Registro e navegue até HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols.
  2. Clique com o botão direito do mouse em Protocolo, selecione Nova>chave. Digite a tecla e pressione Enter. Execute este procedimento para criar as seguintes chaves:
    • SSL3
    • TLS 1.2
    • TLS 1.3
  3. Depois de criar essas chaves, você precisa criar as chaves Cliente e Servidor sob elas.
    • Para SSL3, selecione Nova>chave. Digite Cliente e pressione Enter. Novamente, para SSL3, selecione Nova>Chave novamente. Em seguida, entre em Servidor e pressione Enter.
    • Repita a ação para criar as chaves Cliente e Servidor em TLS 1.2 e TLS 1.3.
  4. Depois de criar as chaves Cliente e Servidor, você precisa criar valores DWORD nelas para habilitar e desabilitar protocolos. Faça isso da seguinte maneira:
    • Habilite o protocolo TLS 1.2. Para fazer isso, no TLS 1.2, na chave Client, crie o valor DWORD DisabledByDefault e defina o valor como 0. Agora crie um valor DWORD Enabled e defina o valor como 1. Crie os mesmos valores DWORD na chave do servidor .
    • Habilite o protocolo TLS 1.3. Para fazer isso, no TLS 1.3, na chave Cliente, crie o valor DWORD DisabledByDefault e defina o valor como 0. Agora crie um valor DWORD Enabled e defina o valor como 1. Crie os mesmos valores DWORD na chave do servidor .
    • Agora desative os outros protocolos. Para fazer isso, em SSL3 e TLS 1.2 na chave do cliente, crie o valor DWORD DisabledByDefault e defina o valor como 1. Agora crie um valor DWORD Enabled e defina o valor como 0. Crie os mesmos valores DWORD na chave do servidor .

Modificar o registro com um script do PowerShell

Em vez de modificar os valores do Registro manualmente, você pode usar o script do PowerShell a seguir.

$ProtocolList       = @(""SSL 3.0", "TLS 1.2", "TLS 1.3")
$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 if ($Protocol -eq "TLS 1.3")
{
Write-Output " Enabling - TLS 1.3"
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

Configurar o VMM para usar o TLS 1.3

  1. Abra o editor do Registro no servidor VMM. Navegue até HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ . NetFramework \ v4.0.30319.
  2. Crie o valor DWORD SchUseStrongCrypto e defina o valor como 1.
  3. Navegue até HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft
    . NetFramework \ v4.0.30319
    .
  4. Nesse local, crie o mesmo valor DWORD SchUseStrongCrypto e defina o valor como 1.
  5. Reinicie o servidor para que as configurações entrem em vigor.

Modificar o registro com um script do PowerShell

Você pode modificar as configurações do Registro usando o script do PowerShell a seguir.

# 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

Próximas etapas