2020 年 7 月 Windows 更新后,IIS 托管的网站开始使用 TLS 1.3,而我需要使用 TLS 1.2 进行入站 SSL 检查以避免出现 ERR_SSL_VERSION_OR_CIPHER_MISMATCH 错误。如何禁用 TLS 1.3?
答案1
微软的一篇文章传输层安全性 (TLS) 注册表设置描述了如何针对 SSL 2.0、SSL 3.0、TLS 1.0、TLS 1.1、TLS 1.2、DTLS 1.0 和 DTLS 1.2 执行此操作。没有理由相信 TLS 1.3 会以任何其他方式执行此操作,尽管尚未记录。
还值得一提的是,你只能创建密钥来更改默认设置TLS/SSL 中的协议 (Schannel SSP)– 这解释了为什么这些键默认不存在。
禁用 TLS 1.3 作为服务器协议
管理 AD FS 的 SSL/TLS 协议和密码套件更好地列出了实际的注册表项,并且还提供了 PowerShell 示例。以下内容是从那里修改而来的。
...使用 .reg 文件(注册表编辑器):
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.3\Server]
"DisabledByDefault"=dword:00000001
"Enabled"=dword:00000000
...使用 PowerShell:
New-Item `
'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.3\Server' `
-Force | Out-Null
New-ItemProperty `
-path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.3\Server' `
-name 'Enabled' -value '0' -PropertyType 'DWord' -Force | Out-Null
New-ItemProperty `
-path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.3\Server' `
-name 'DisabledByDefault' -value 1 -PropertyType 'DWord' -Force | Out-Null