Partager via


Configurer TLS 1.3 pour VMM

Cet article explique comment configurer le protocole TLS (Transport Security Layer) version 1.3 avec le serveur System Center Virtual Machine Manager (VMM).

Remarque

Virtual Machine Manager utilisera le protocole configuré au niveau du système d’exploitation. Par exemple, si TLS 1.2 et TLS 1.3 sont activés au niveau du système d’exploitation, Virtual Machine Manager sélectionne l’un des deux protocoles dans l’ordre de préférence suivant :

  1. TLS version 1.3
  2. TLS version 1.2

Le SSP Schannel sélectionne ensuite le protocole d’authentification préféré que le client et le serveur peuvent prendre en charge.

Avant de commencer

  • Les correctifs de sécurité doivent être à jour sur le serveur VMM et le serveur exécutant la base de données VMM.
  • Le serveur VMM doit exécuter .NET version 4.6 ou ultérieure. Suivez ces instructions pour déterminer la version de .NET installée.
  • • TLS 1.3. nécessite TLS 1.2. à configurer.
  • Pour utiliser TLS 1.3, les composants System Center génèrent des certificats SHA1 ou SHA2 auto-signés. Si des certificats SSL provenant d’un certificat d’autorité de certification sont utilisés, ils doivent utiliser SHA1 ou SHA2.

Configurer le serveur VMM pour utiliser TLS 1.3

Désactivez tous les protocoles SCHANNEL à l’exception de TLS 1.3 et 1.2.

Modifier manuellement le Registre

  1. Ouvrez l’Éditeur du Registre et accédez à HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols.
  2. Cliquez avec le bouton droit sur Protocole, sélectionnez Nouvelle>clé. Entrez la touche, puis appuyez sur Entrée. Effectuez cette procédure pour créer les clés suivantes :
    • SSL3
    • TLS 1.2
    • TLS 1.3
  3. Une fois ces clés créées, vous devez créer les clés client et serveur sous ces clés.
    • Pour SSL3, sélectionnez Nouvelle>clé. Entrez client, puis appuyez sur Entrée. Là encore, pour SSL3, sélectionnez Nouvelle>clé. Entrez ensuite Le serveur, puis appuyez sur Entrée.
    • Répétez l’action pour créer les clés client et serveur sous TLS 1.2 et TLS 1.3.
  4. Une fois que vous avez créé les clés client et serveur , vous devez créer des valeurs DWORD sous ces clés pour activer et désactiver les protocoles. Procédez comme suit :
    • Activez le protocole TLS 1.2. Pour ce faire, dans TLS 1.2, sous la clé cliente , créez la valeur DWORD DisabledByDefault et définissez la valeur sur 0. Créez maintenant une valeur DWORD activée et définissez la valeur sur 1. Créez les mêmes valeurs DWORD sous la clé serveur .
    • Activez le protocole TLS 1.3. Pour ce faire, dans TLS 1.3, sous la clé cliente , créez la valeur DWORD DisabledByDefault et définissez la valeur sur 0. Créez maintenant une valeur DWORD activée et définissez la valeur sur 1. Créez les mêmes valeurs DWORD sous la clé serveur .
    • Désactivez maintenant les autres protocoles. Pour ce faire, dans SSL3 et TLS 1.2 sous la clé cliente , créez la valeur DWORD DisabledByDefault et définissez la valeur sur 1. Créez maintenant une valeur DWORD activée et définissez la valeur sur 0. Créez les mêmes valeurs DWORD sous la clé serveur .

Modifier le Registre avec un script PowerShell

Au lieu de modifier manuellement les valeurs de Registre, vous pouvez utiliser le script PowerShell suivant.

$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

Configurer VMM pour utiliser TLS 1.3

  1. Ouvrez l’éditeur de Registre sur le serveur VMM. Accédez à HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ . NetFramework\v4.0.30319.
  2. Créez la valeur DWORD SchUseStrongCrypto et définissez la valeur sur 1.
  3. Accédez à HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft
    . NetFramework\v4.0.30319
    .
  4. Sous cet emplacement, créez la même valeur DWORD SchUseStrongCrypto et définissez la valeur sur 1.
  5. Redémarrez le serveur pour que les paramètres prennent effet.

Modifier le Registre avec un script PowerShell

Vous pouvez modifier les paramètres du Registre à l’aide du script PowerShell suivant.

# 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

Étapes suivantes