![具有多个 SSL 证书的 Pound Proxy](https://linux22.com/image/795848/%E5%85%B7%E6%9C%89%E5%A4%9A%E4%B8%AA%20SSL%20%E8%AF%81%E4%B9%A6%E7%9A%84%20Pound%20Proxy.png)
阅读后磅网站 SSL 不支持虚拟主机名,这实际上对我来说似乎相当直接和明显。我有一个 pound 负载平衡器,希望终止与它的 SSL 连接。如果它后面的 Web 服务器根据主机名运行多个站点,我是否可以配置 pound 以针对这些不同的主机使用多个 SSL 证书。
我能想到的唯一方法是针对每个想要使用 SSL 的站点为负载均衡器分配另一个 IP,并为特定站点的该 IP 和端口组合配置一个证书。
有谁会这样做吗?这会有用吗?
更新
理想情况下,如果有人可以分享一个配置示例,那将是最好的解决方案,以便我可以阅读它。谢谢。
答案1
看来我太急于发表这篇文章,在发表之前没有做足够的研究。正如庞德所支持的那样SSL 服务接口(对于 SSLv3),我可以简单地使用多个“Cert”语句来指定多个证书文件,然后 Pound 将为传入的请求选择合适的证书文件。
[如果一个请求通过 SSL 进入 Pound,而这个请求针对的不是我托管的域名,因此也没有该域名的证书,Pound(至少对我来说)只会使用列表中的第一个证书,这会导致浏览器显示 SSL 错误]。
大多数现代浏览器都支持 SNI。在 2012 年最后一个季度,我认为没有太多IE 5 和 6 用户例如在周围徘徊;)
这是对我有用的示例基本配置;
ListenHTTPS
Address my.public.facing.ip
Port 443
Cert "/etc/ssl/certs/www.sslsite1.com.pem"
Cert "/etc/ssl/certs/www.sslsite2.com.pem"
Service
BackEnd
Address 192.168.0.10 # A web server IP
Port 80
End
End
End
答案2
我有 Pound,它可以为几个不同的 SSL 网站提供服务,只需为每个不同的网站使用单独的 ListenHTTPS 即可。