在负载均衡器上开启HTTPS协议时,需要绑定证书。假设LB上服务了多个域名,而每个域名都有不同的证书,所以负载均衡上此时要绑定多个证书。
SNI(Server Name Indication)
解决了这个问题,它根据客户端的实际域名请求(如www.mycorp.com
), 找到对应的证书返回给客户端:
借助 SNI,负载均衡器还支持智能证书选择。如果客户端指定的主机名与多个证书匹配,那么负载均衡器会基于多个因素确定要使用的最适合的证书。
注意,这个特性仅支持NLB和ALB。
下图是SNI的一个示例,我们在负载均衡器上绑定了多个域名的证书,它可以根据客户端的域名请求来智能选择使用哪个证书:
如果CLB上也要实现服务多个域名,且使用HTTPS协议,该如何操作呢?
CLB最多支持绑定一个证书,此时要通过通配符
或多域 (SAN - Subject Alternate Name) 证书
才能在同一个负载均衡器后面托管多个域名服务。
但管理多域证书(SAN)
带来了额外的的运营开销,每当新的域名添加时,SSL证书都要发生变化。相比之下SNI就简单了很多