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:
- TLS versão 1.3
- 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
- Abra o Editor do Registro e navegue até HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols.
- 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
- 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.
- 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
- Abra o editor do Registro no servidor VMM. Navegue até HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ . NetFramework \ v4.0.30319.
- Crie o valor DWORD SchUseStrongCrypto e defina o valor como 1.
- Navegue até HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft
. NetFramework \ v4.0.30319. - Nesse local, crie o mesmo valor DWORD SchUseStrongCrypto e defina o valor como 1.
- 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
- Saiba mais sobre o protocolo TLS 1.3.
- Saiba mais sobre o protocolo TLS 1.2.