Compartir a través de


Configuración de TLS 1.2 para VMM

En este artículo se describe cómo configurar la versión 1.2 del protocolo de capa de seguridad de transporte (TLS) con el servidor de System Center Virtual Machine Manager (VMM).

Nota:

Operations Manager usará el protocolo configurado en el nivel de sistema operativo. Por ejemplo, si TLS 1.0, TLS 1.1 y TLS 1.2 están habilitados en el nivel de sistema operativo, Virtual Machine Manager seleccionará uno de los tres protocolos en el orden de preferencia siguiente:

  1. TLS versión 1.2
  2. TLS versión 1.1
  3. TLS versión 1.0

El SSP de SChannel seleccionará entonces el protocolo de autenticación preferido que tanto el cliente como el servidor admitan.

Antes de comenzar

  • Las correcciones de seguridad deben estar actualizadas en el servidor de VMM y en el servidor que ejecuta la base de datos VMM.
  • El servidor de VMM debe ejecutar .NET versión 4.6. Sigue estas instrucciones para determinar qué versión de .NET está instalada.
  • Para trabajar con TLS 1.2, los componentes de System Center generan certificados autofirmados SHA1 o SHA2. Si se usan certificados SSL de una entidad de certificación (CA), estos deben utilizar SHA1 o SHA2.

Instalación de una actualización de SQL Server para la compatibilidad con TLS 1.2

  1. Abre KB 3135244.
  2. Descarga e instala la actualización para tu versión de SQL Server.
    • No necesitas esta actualización si ejecutas SQL Server 2016.
    • SQL Server 2008 R2 no admite TLS 1.2

Configuración del servidor VMM para usar TLS 1.2

Deshabilita todos los protocolos SCHANNEL excepto TLS 1.2.

Modificación manual del registro

  1. Abre el Editor del registro y navega hasta HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols.
  2. Haz clic con el botón derecho en Protocolo y selecciona Nuevo>Clave. Escribe la clave y pulsa Entrar. Realiza este procedimiento para crear las siguientes claves:
    • SSL3
    • TLS 1.0
    • TLS 1.1
    • TLS 1.2
  3. Después de crear estas claves, debes crear las claves Client y Server dentro de ellas.
    • Para SSL3, selecciona Nuevo>Clave. Escribe Client y pulsa Entrar. De nuevo, para SSL3, vuelve a seleccionar Nuevo>Clave. A continuación, escribe Server y pulsa Entrar.
    • Repite la acción para crear las claves Client y Server en TLS 1.0, TLS 1.1 y TLS 1.2.
  4. Una vez que haya creado las claves de Cliente y Servidor, tiene que crear valores DWORD debajo de ellas para poder habilitar y deshabilitar los protocolos. Sigue estos pasos:
    • Habilita el protocolo TLS 1.2. Para ello, en TLS 1.2, bajo la clave Client, crea el valor DWORD DisabledByDefault y establece el valor en 0. Ahora crea un valor DWORD Enabled y establece el valor en 1. Crea los mismos valores DWORD en la clave Server .
    • Ahora deshabilita los demás protocolos. Para ello, en SSL3, TLS 1.0 y TLS 1.1, en la clave Client, crea el valor DWORD DisabledByDefault y establece el valor en 1. Ahora crea un valor DWORD Enabled y establece el valor en 0. Crea los mismos valores DWORD en la clave Server .

Modificación del registro con un script de PowerShell

En lugar de modificar manualmente los valores del registro, puedes usar el siguiente script de PowerShell.

$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

Configuración de VMM para usar TLS 1.2

  1. En el servidor VMM, abre el editor del registro. Navega a HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ .NetFramework\v4.0.30319.
  2. Crea el valor DWORD SchUseStrongCrypto y establece el valor en 1.
  3. Ahora vaya a HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft.
    .NetFramework\v4.0.30319
    .
  4. En esta ubicación, crea el mismo valor DWORD SchUseStrongCrypto y establece el valor en 1.
  5. Reinicia el servidor para que la configuración surta efecto.

Modificación del registro con un script de PowerShell

Puedes modificar la configuración del Registro mediante el siguiente script de PowerShell.

# 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

Pasos siguientes

Más información sobre el protocolo TLS 1.2.