我观察到一个网站example.com与mysite.com具有cname映射。 example.com和mysite.com都具有ssl证书。
如果我做错了正确吗?
当浏览器尝试连接https://example.com时,它将检查DNS,并发现它与mysite.com具有cname映射,并直接连接到mysite.com Web服务器。
当我观察到浏览器具有example.com域的ssl证书时。在了解此案时,我遇到了问题。
如果请求未转到example.com Web服务器,浏览器如何获得example.com的ssl证书 还是我的cname映射理解错误?
或example.com的私钥和公钥是否与mysite.com网络服务器共享?
答案 0 :(得分:1)
DNS和TLS彼此完全独立运行。
TLS除其他功能外,还用于加密(如加密),以根据服务器的FQDN(完全合格的域名)验证服务器的身份。这是通过检查所涉及的服务器是否能够提供由受信任的证书颁发机构(CA)签名的包含FQDN的证书来完成的。 DNS用于将主机名解析为IP地址,以便在较低层上建立网络连接(如TCP连接)。解析的发生方式对TLS等其他组件完全透明。名称解析涉及A
,AAAA
还是提到的CNAME
记录都没有关系-在我们的上下文中,输入始终是单个主机名,输出始终是一个(或多个)主机名)的IP地址。名称解析完成后,像CNAME
映射这样的中间结果基本上会被丢弃。
这意味着TLS客户端始终始终使用用户最初请求的FQDN(与任何CNAME
映射无关)来验证证书。如何出示有效证书取决于服务器-按照您的示例,FQDN mysite.com
之后的服务器将必须出示对example.com
有效的证书,以便客户端接受。该证书的私钥/公钥的生成方式,以及是否与其他证书或服务器共享都无关紧要。
答案 1 :(得分:0)
我们必须将两个域的SSL证书明确附加到Web服务器/负载平衡器,以使两个域都支持HTTPS。