Cómo habilitar la autenticación TLS 1.2 en clientes

Se aplica a: Configuration Manager (rama actual)

Al habilitar TLS 1.2 para el entorno de Configuration Manager, empiece por asegurarse de que los clientes estén configurados correctamente y que puedan usar TLS 1.2 antes de habilitar TLS 1.2 y deshabilitar los protocolos anteriores en los servidores de sitio y sistemas de sitio remotos. Para habilitar TLS 1.2 en los clientes, necesita realizar tres tareas:

  • Actualice Windows y WinHTTP
  • Asegúrese de que TLS 1.2 está habilitado como protocolo para SChannel en el nivel de sistema operativo
  • Actualice y configure .NET Framework para que admita TLS 1.2

Para obtener más información sobre las dependencias de características y escenarios específicos de Configuration Manager, consulte Acerca de la habilitación de TLS 1.2.

Actualice Windows y WinHTTP

Windows 8.1, Windows Server 2012 R2, Windows 10, Windows Server 2016 y versiones posteriores de Windows admiten TLS 1.2 de forma nativa para las comunicaciones cliente-servidor a través de WinHTTP.

Las versiones anteriores de Windows, como Windows 7 o Windows Server 2012, no habilitan TLS 1.1 o TLS 1.2 de forma predeterminada para las comunicaciones seguras mediante WinHTTP. Para estas versiones anteriores de Windows, instale Actualización 3140245 para habilitar el valor del Registro a continuación, que se puede establecer para agregar TLS 1.1 y TLS 1.2 a la lista predeterminada de protocolos seguros para WinHTTP. Con la revisión instalada, cree los siguientes valores del Registro:

Importante

Habilite esta configuración en todos los clientes que ejecutan versiones anteriores de Windows antes de habilitar TLS 1.2 y deshabilitar los protocolos anteriores en los servidores de Configuration Manager. De lo contrario, puede volverlos huérfanos de forma involuntaria.

Compruebe el valor de la configuración del Registro DefaultSecureProtocols, por ejemplo:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp\
      DefaultSecureProtocols = (DWORD): 0xAA0
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp\
      DefaultSecureProtocols = (DWORD): 0xAA0

Si cambia este valor, reinicie el equipo.

En el ejemplo anterior, se muestra el valor de 0xAA0 para la configuración WinHTTP DefaultSecureProtocols. Actualización para habilitar TLS 1.1 y TLS 1.2 como protocolos seguros predeterminados en WinHTTP en Windows muestra el valor hexadecimal de cada protocolo. De forma predeterminada, en Windows, este valor es 0x0A0 para habilitar SSL 3.0 y TLS 1.0 para WinHTTP. En el ejemplo anterior, se mantienen estos valores predeterminados y también se habilita TLS 1.1 y TLS 1.2 para WinHTTP. Esta configuración garantiza que el cambio no interrumpa ninguna otra aplicación que pueda seguir dependiendo de SSL 3.0 o TLS 1.0. Puede usar el valor de 0xA00 para habilitar solo TLS 1.1 y TLS 1.2. Configuration Manager admite el protocolo más seguro que Windows negocia entre ambos dispositivos.

Si desea deshabilitar por completo SSL 3.0 y TLS 1.0, use la configuración de protocolos deshabilitados de SChannel en Windows. Para obtener más información, consulte Restringir el uso de determinados algoritmos criptográficos y protocolos en Schannel.dll.

Asegúrese de que TLS 1.2 está habilitado como protocolo para SChannel en el nivel de sistema operativo

En su mayor parte, el uso de protocolos se controla en tres niveles, el nivel del sistema operativo, el nivel de plataforma o plataforma y el nivel de aplicación. TLS 1.2 está habilitado de forma predeterminada en el nivel de sistema operativo. Una vez que se haya asegurado de que los valores del Registro de .NET están establecidos para habilitar TLS 1.2 y comprobar que el entorno usa TLS 1.2 correctamente en la red, es posible que desee editar la clave del SChannel\Protocols Registro para deshabilitar los protocolos más antiguos y menos seguros. Para obtener más información sobre cómo deshabilitar TLS 1.0 y 1.1, vea Configuración de protocolos Schannel en el Registro de Windows.

Actualice y configure .NET Framework para que admita TLS 1.2

Determinación de la versión de .NET

En primer lugar, determine las versiones de .NET instaladas. Para más información, vea Determinar las versiones y los niveles de Service Pack de Microsoft .NET Framework instalados.

Instalar actualizaciones de .NET

Instale las actualizaciones de .NET para que pueda habilitar la criptografía segura. Es posible que algunas versiones de .NET Framework requieran actualizaciones para habilitar la criptografía segura. Use estas instrucciones:

  • NET Framework 4.6.2 y versiones posteriores admiten TLS 1.1 y TLS 1.2. Confirme la configuración del Registro, pero no se requieren cambios adicionales.

    Nota

    A partir de la versión 2107, Configuration Manager requiere Microsoft versión 4.6.2 de .NET Framework para servidores de sitio, sistemas de sitio específicos, clientes y la consola. Si es posible en su entorno, instale la versión más reciente de .NET versión 4.8.

  • Actualice NET Framework 4.6 y versiones anteriores para admitir TLS 1.1 y TLS 1.2. Para obtener más información, vea Versiones y dependencias de .NET Framework.

  • Si usa .NET Framework 4.5.1 o 4.5.2 en Windows 8.1, Windows Server 2012 R2 o Windows Server 2012, se recomienda encarecidamente instalar las actualizaciones de seguridad más recientes para .Net Framework 4.5.1 y 4.5.2 para asegurarse de que TLS 1.2 se puede habilitar correctamente.

    Como referencia, TLS 1.2 se introdujo por primera vez en .Net Framework 4.5.1 y 4.5.2 con los siguientes paquetes acumulativos de revisiones:

Configuración para criptografía segura

Configure .NET Framework para admitir criptografía segura. Establezca la configuración del SchUseStrongCrypto Registro en DWORD:00000001. Este valor deshabilita el cifrado de secuencias RC4 y requiere un reinicio. Para obtener más información sobre esta configuración, vea Microsoft Security Advisory 296038.

Asegúrese de establecer las siguientes claves del Registro en cualquier equipo que se comunique a través de la red con un sistema habilitado para TLS 1.2. Por ejemplo, Configuration Manager clientes, roles de sistema de sitio remoto no instalados en el servidor de sitio y el propio servidor de sitio.

Para aplicaciones de 32 bits que se ejecutan en sistemas operativos de 32 bits y para aplicaciones de 64 bits que se ejecutan en sistemas operativos de 64 bits, actualice los siguientes valores de subclave:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v2.0.50727]
      "SystemDefaultTlsVersions" = dword:00000001
      "SchUseStrongCrypto" = dword:00000001
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319]
      "SystemDefaultTlsVersions" = dword:00000001
      "SchUseStrongCrypto" = dword:00000001

Para aplicaciones de 32 bits que se ejecutan en SO de 64 bits, actualice los siguientes valores de subclave:

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727]
      "SystemDefaultTlsVersions" = dword:00000001
      "SchUseStrongCrypto" = dword:00000001
[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319]
      "SystemDefaultTlsVersions" = dword:00000001
      "SchUseStrongCrypto" = dword:00000001

Nota

La SchUseStrongCrypto configuración permite a .NET usar TLS 1.1 y TLS 1.2. La SystemDefaultTlsVersions configuración permite que .NET use la configuración del sistema operativo. Para obtener más información, consulte Procedimientos recomendados de TLS con .NET Framework.

Siguientes pasos