Icono del sitio Programando a medianoche

Deshabilitar protocolos TLS 1.0 y 1.1 de Windows

El TLS (Transport Layer Security), al igual que el SSL, es un protocolo de comunicación segura, para lo cual utiliza la encriptación de los datos. Este protocolo tiene varias versiones, desde la 1.0 de 1999, hasta la 1.3, que fue definida en el RFC 8446 en agosto de 2018.
Obviamente cada versión soluciona problemas y vulnerabilidades de su antecesor, pero lleva tiempo que los navegadores implementen las nuevas versiones de los protocolos.
Por suerte, los desarrolladores de los navegadores principales, o sea, Google (Chrome), Apple (Safari), Microsoft (Edge) y Mozilla (Firefox), informaron que desde marzo de 2020 dejarán de dar soporte a TLS 1.0 y TLS 1.1 por varias de sus vulnerabilidades.
Ahora bien, nuestro IIS seguramente sigue soportando este protocolo, y lo mas seguro sería deshabilitarlo, para lo cual, hay que hacer algunas modificaciones en el registro de Windows.
Toda la configuración de estos protocolos están en HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols, pero para hacerlo más fácil cree un archivo .reg que deshabilita estos protocolos y habilita el TLS 1.2 y el SSL 3.0:

Windows Registry Editor Version 5.00


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols]


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0]


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Client]
"DisabledByDefault"=dword:00000001


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0]


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client]
"Enabled"=dword:00000000


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server]
"Enabled"=dword:00000001


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0]


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client]
"Enabled"=dword:00000000


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server]
"DisabledByDefault"=dword:00000001


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1]


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client]
"DisabledByDefault"=dword:00000000


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server]
"DisabledByDefault"=dword:00000001


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2]


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client]
"DisabledByDefault"=dword:00000000


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server]
"DisabledByDefault"=dword:00000000
"Enabled"=dword:00000001

Cabe notar que dentro de Protocols creamos un key por cada procolo, y dentro creamos otro llamado Server, y por último, ahí creamos datos DWORD estableciendo el Enabled en 1 para TLS 1.2 y DisabledByDefault en 1 para TLS 1.0 y 1.1.
Para utilizarlo simplemente hay que crear un archivo .reg, por ejemplo, tls.reg, meter todo este texto dentro, y después darle doble click en el servidor, tras los cual nos va a pedir una confirmación para importar esta información en el registro de Windows, y listo!
Después de importar este archivo, hay que reiniciar el servidor.
Nosotros lo probamos en un Windows Server 2016 y funcionó perfecto.
Espero les sea de utilidad.
¡Suerte!

Salir de la versión móvil