多个域的单个SSL

时间:2011-06-13 23:03:09

标签: iis ssl iis-7.5

我在IIS中有一个站点,其中有一个空白主机标头和50多个unqiue域,这些域都指向这个站点。是否有可以在网站上安装的全能或通配符SSL,以便它可以与每个域一起使用?我知道存在通配符证书,但我认为它们仅限于单个TLD。

我希望在一个站点上安装多个证书,因为每个域已经购买了一个证书,但这不会发生。

我查看了IIS 7 SSL for multiple sites with a single IP,指向http://www.sslshopper.com/article-ssl-host-headers-in-iis-7.html,表示我需要统一通信证书http://www.sslshopper.com/unified-communications-uc-ssl-certificates.html

有什么想法吗?统一证书会起作用吗?

IIS 7.5

2 个答案:

答案 0 :(得分:5)

通配符SSL证书适用于单个域。对于你的情况,你必须有一个适用于每个域的证书,这是不安全的,你可以,例如,欺骗hotmail.com

然而 X509中有一个名为Subject Alternative Name(SAN)的属性。这允许可以使用证书的固定域列表,但列表在发布时固定。你的链接说它使用了这种方法,但我很困惑为什么他们说他们主要是为了UC服务器,他们可以作为普通的旧HTTPS证书工作。我现在正在开发盒上使用它。

如果您认为他们是专业的Verisign也会这样做,Entrust

答案 1 :(得分:-1)

原则上,每个服务器(意思是服务器端的任何程序都响应客户端的请求can send only one certificate。它还会将一系列证书发送到根证书。

使用普通的SSL / TLS,握手在客户端有机会指示它想要一个页面的域之前完成(这是在HTTP头中完成的),因此您没有机会提供正确的证书。

一个常见的解决方案是服务器有多个IP地址(每个域一个,或者每个SSL证书至少一个),因此可以通过IP地址识别应该使用哪个证书。 (不过我不知道IIS如何处理这个问题。)

由于IPv4地址日益稀缺,分配新的IP地址会产生更多问题,因为RFC 6066(及其前身)定义了服务器名称 TSL扩展(扩展 - ID 0),允许客户端在ClientHello消息(启动握手)中包含所需的服务器名称,允许服务器为其选择正确的证书。

没有认真的认证机构会为您提供*.com或类似的通配证书,因为凭借这样的证书,您可以假装几乎任何人。证书可以列出多个域名,但我不知道它们的数量是否有上限(IIS和普通客户端)。