在 IIS 上禁用 TLS 1.3

在 IIS 上禁用 TLS 1.3

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

答案2

对于 Windows Server 2022,可以在没有 TLS 1.3 的情况下配置 IIS 绑定:

在此处输入图片描述

如果可用,这将导致 IIS 回退到 TLS 1.2。

相关内容