我们使用 IIS8.5,只配置了默认网站,但在同一个负载平衡 IP 上指向它的数千个域。
我们计划为所有这数千个域提供 https (SSL)。由于服务器名称指示 (SNI) 功能,所有 .pfx 证书都将存储在中央证书存储 (CCS) 中,并将使用相同的 IP 绑定到同一个网站。
SNI 和 CCS 可以很好地用于此目的,但前提是我们在默认网站中为每个域添加显式竞价,这对于数千个域是不切实际的:
<site name="Default Web Site" id="1">
<application path="/">
<virtualDirectory path="/" physicalPath="%SystemDrive%\inetpub\wwwroot" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:80:" />
<binding protocol="https" bindingInformation="*:443:www.domain1.com.br" sslFlags="3" />
<binding protocol="https" bindingInformation="*:443:www.domain2.com.br" sslFlags="3" />
<binding protocol="https" bindingInformation="*:443:www.domain3.com.br" sslFlags="3" />
...
...
...
<binding protocol="https" bindingInformation="*:443:www.otherdomain9998.com.br" sslFlags="3" />
<binding protocol="https" bindingInformation="*:443:www.otherdomain9999.com.br" sslFlags="3" />
...
</bindings>
</site>
我尝试配置默认的 https 协议绑定,与默认的 http 协议绑定方式相同,使用 sslFlags="3",即 SNI+CCS:
<site name="Default Web Site" id="1">
<application path="/">
<virtualDirectory path="/" physicalPath="%SystemDrive%\inetpub\wwwroot" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:80:" />
<binding protocol="https" bindingInformation="*:443:" sslFlags="3" />
</bindings>
</site>
使用上述配置,不会向任何浏览器提供 SSL 证书。
有没有其他方法可以使用 SNI 和 CCS 为 https 配置默认网站?
我真的很感激任何帮助我指出正确的方向。
谢谢!
吉尔赫姆