在IIS 8.5上使用通配符证书的SNI

时间:2017-03-08 12:51:53

标签: 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中为这些新网站启用了Require Server Name Indication,但我的问题是IIS不断为我的新网站发送旧证书,我做错了以及为什么IIS永远不会在其服务器Hello响应中发送SNI扩展?

3 个答案:

答案 0 :(得分:2)

所有使用ssl的网站都必须启用SNI。 如果只有一个站点具有未启用SNI的通配符证书,则这将导致所有其他证书不能与SNI一起使用。 找出网站是否未启用SNI的最简单方法是在“ApplicationHost.config”文件中查找(位于windir / system32 / inetsrv / config中)。在sites-section中列出了所有绑定,并且sslFlags-Attributes应为“1”。没有站点可能具有以下属性:sslFlags =“0”。在识别具有“0”标志的站点之后,您可以在IIS管理控制台中激活这些站点的SNI标志。

答案 1 :(得分:0)

旧网站/绑定可能没有启用SNI。

检查每个站点的*.myhost.com绑定并启用SNI。

如果在那里禁用了SNI,则旧证书会声明IP和端口号组合。

否则,请执行以下命令提供更多信息:

netsh http show sslcert

这将列出所有绑定

更多背景信息:https://blogs.msdn.microsoft.com/kaushal/2012/09/04/server-name-indication-sni-with-iis-8-windows-server-2012/

更新: 检查连接,下载OpenSSL并使用OpenSSL Client通过以下命令创建调试信息:

openssl s_client -state -debug -connect www.xyz.com:443

答案 2 :(得分:0)

对于非SNI网站,请确保将绑定设置为"所有未分配的"而不是特定的IP地址(否则它们将妨碍SNI站点)。