基于主机名的 SSL(单个 IP 上的多个 ssl 虚拟主机)背后的技术是什么?

mdr*_*iel 4 ssl nginx web heroku apache-2.2

著名的 PaaS 提供商Heroku为 SSL 问题提供了多种解决方案。其中之一是名为Hostname Based SSL的产品

这不是 SNI。他们声称它适用于任何配置的每个浏览器,但还有其他缺点,主要是(引用文档):

  • 基于主机名的 SSL 不适用于根域,因为它依赖于自定义域名的 CNAME 别名。

  • 主机名 SSL 仅适用于一个域。例如,www.domain.com 可以工作,但如果将 secure.domain.com 的第二个证书添加到应用程序中,它将无法工作。

  • 我们基于主机名的 SSL 产品目前去除了一些 HTTP 标头;例如,当您的应用程序需要查看客户端的 IP 时,这可能是一个问题。

使用这个自定义构建解决方案,Heorku 可以在一个 IP 地址上为多个 SSL 站点提供服务,并且正如他们声称的那样,它可以跨任何地方工作。

谁能解释这个解决方案的技术方面和这个产品背后的技术?

Mic*_*uch 7

这不是你想的那样。Heroku 不会在单个 IP 地址上提供多个 SSL 证书。例如,如果您对不同的主机名 SSL 部署执行 nslookup,您会发现它们每个都指向不同的Amazon ELB。这就是秘诀。

当客户请求基于主机名的 SSL 时,系统会为他们配置一个 ELB,并要求客户将 CNAME 命名为该 ELB 的主机名。这些 ELB 会根据需要连接回 Heroku 路由网格。

我希望能澄清一些事情。随意提出更多问题。