Ssl IIS 8.5上具有通配符证书的SNI
我在IIS 8.5上有一组网站都使用了wilcard证书(Ssl IIS 8.5上具有通配符证书的SNI,ssl,iis,iis-8.5,Ssl,Iis,Iis 8.5,我在IIS 8.5上有一组网站都使用了wilcard证书(*.myhost.com),比如: api.myhost.com data.myhost.com ... 现在我想给这个站点添加一个新名称,因此我获得了一个新证书(*.newhost.com),并在IIS上添加了新站点: api.newhost.com data.newhost.com ... 启用的需要在IIS中为这个新站点指定服务器名称,但我的问题是IIS一直在为我的新站点发送旧证书,我做错了什么,为什么IIS从未在其服务器Hel
*.myhost.com
),比如:
api.myhost.com
data.myhost.com
...
现在我想给这个站点添加一个新名称,因此我获得了一个新证书(*.newhost.com
),并在IIS上添加了新站点:
api.newhost.com
data.newhost.com
...
启用的
需要在IIS中为这个新站点指定服务器名称,但我的问题是IIS一直在为我的新站点发送旧证书,我做错了什么,为什么IIS从未在其服务器Hello响应中发送SNI扩展?可能旧站点/绑定没有启用SNI
检查每个站点的*.myhost.com
绑定并启用SNI
如果SNI在那里被禁用,IP和端口号组合将由旧证书声明
否则,通过执行以下命令提供更多信息:
netsh http show sslcert
这将列出所有绑定
更多背景信息:
更新:
检查连接,下载OpenSSL并使用OpenSSL客户端创建调试信息,命令如下:
openssl s_client -state -debug -connect www.xyz.com:443
可能旧站点/绑定没有启用SNI
检查每个站点的*.myhost.com
绑定并启用SNI
如果SNI在那里被禁用,IP和端口号组合将由旧证书声明
否则,通过执行以下命令提供更多信息:
netsh http show sslcert
这将列出所有绑定
更多背景信息:
更新:
检查连接,下载OpenSSL并使用OpenSSL客户端创建调试信息,命令如下:
openssl s_client -state -debug -connect www.xyz.com:443
对于非SNI站点,请确保将绑定设置为“所有未分配”而不是特定的IP地址(否则会妨碍SNI站点)。对于非SNI站点,请确保将绑定设置为“所有未分配”而不是特定的IP地址(否则会妨碍SNI站点).所有使用ssl的站点都必须启用SNI。
如果只有一个站点具有未启用SNI的通配符证书,这将导致所有其他证书无法与SNI一起使用。
查找站点是否未启用SNI的最简单方法是查找文件“ApplicationHost.config”(位于windir/system32/inetsrv/config中)。在“站点”部分列出了所有绑定,它们的sslFlags属性应为“1”。任何站点的属性都不能为:sslFlags=“0”。使用“0”标志标识站点后,您可以在IIS管理控制台中激活这些站点的SNI标志。所有使用ssl的站点都必须启用SNI。
如果只有一个站点具有未启用SNI的通配符证书,这将导致所有其他证书无法与SNI一起使用。
查找站点是否未启用SNI的最简单方法是查找文件“ApplicationHost.config”(位于windir/system32/inetsrv/config中)。在“站点”部分列出了所有绑定,它们的sslFlags属性应为“1”。任何站点的属性都不能为:sslFlags=“0”。在识别带有“0”标志的站点之后,然后,您可以在IIS管理控制台中激活这些站点的SNI标志。我在启用和禁用SNI模式下对旧站点进行了测试,并通过netsh http show sslcert
和powrshell cmd letGet WebBinding
在启用调试选项的情况下尝试openssl s_客户端(请参阅我更新的帖子)我还使用openssl s_client-connect api.newhost.com:443-tlsextdebug进行了测试,服务器从不需要SNI并为旧站点发送证书我在启用和禁用SNI模式下对旧站点进行了测试,并用netsh http show sslcert
和powrshell cmd letGet WebBinding
在启用调试选项的情况下尝试openssl s_客户端(请参阅我更新的帖子)我还使用openssl s_client-connect api.newhost.com:443-tlsextdebug
进行了测试,服务器从不需要SNI,只在客户端以正确的方式请求时才为旧站点发送证书SNI。我建议您使用Wireshark捕获SSL/TLS会话,并仔细分析数据包以找到罪魁祸首。只有在客户端以正确的方式请求时,SNI才起作用。我建议您使用Wireshark捕获SSL/TLS会话,并仔细分析数据包以找到罪犯。这正是我们的问题!这正是我们的问题!