我试图了解特定负载均衡器的原因 - >网络服务器配置工作,所以请允许我画图。
我有一个F5负载均衡器(LB),它将流量传递给Web服务器(WSvr)。 WSvr正在运行IIS 8.
LB拥有自己的SSL证书,即https://www.example.com。 WSvr有一个单独的SSL证书,即https://myWebServer.example.com。
我期待这个LB - > WSvr配置失败但实际上有效,我真的不明白为什么。它不仅可以工作,而且还能够在WSvr上托管的Web应用程序中进行身份验证,这意味着会话始终保持活动状态。
我认为如果您选择在LB和WSvr上使用证书,则必须在两台计算机上安装相同的证书。也就是说,LB IP地址和WSvr IP地址必须映射到相同的DNS名称,即www.example.com。不是两个完全独立的证书。 (在我的例子中,LB映射到www.example.com。并且WSvr映射到myWebServer.example.com。)LB如何与WSvr通信并使会话保持活动状态?
这就是我用上述场景描绘典型请求的方式(根据实际发生的情况显然不正确,但它说明了为什么我认为它会失败):
LB通过LB的SSL证书加密www.example.com/login.html并将其传递给WSvr
从请求中删除SSL,终止会话。 WSvr使用自己的SSL证书重新加密它,创建一个新会话。
如果有人可以启发并引导我走上正确的道路,并解释为什么我的错误以及为何上述配置有效,我将不胜感激。
非常感谢你的时间。
答案 0 :(得分:1)
这里的关键是两个单独的连接(会话),因此有两个单独的SSL握手,一个在客户端和LB之间,另一个在LB和后端之间。第一次握手验证客户端是否要连接到https://www.example.com,第二次握手验证LB想要连接到https://myWebServer.example.com。 SSL没有“剥离”。客户端发送的每个请求都通过这两个连接,因此实际上它被加密了两次。