通配符证书卡在服务器上?

通配符证书卡在服务器上?

这是我第一次在这里提问。

无论如何,我遇到了这个问题,并且已经研究了几个星期了。我们使用的网站是一家 Drupal 和 Wordpress 的网站托管和管理公司。我们为这个网站有两个自定义域,一个是基本域 example.com,另一个是 www.example.com 的子域。他们告诉我们在我们的内部 DNS 服务器中添加一个 CNAME,从默认域 = live-example.magazine.io 重定向到 www.example.com。我们照做了,它工作正常,连接很好,每个人都可以访问。这就是问题的开始,我的老板在这些域上打开了 HTTPS 实时环境,顺便说一下,这些域是我们的,现在我们遇到了证书问题。来自我们网络外部的客户可以访问该网站,正确的证书会显示在网站上。每当我们网络内部的任何人尝试访问 www.example.com 时,它都会给我们一个 SSL_ERROR_BAD_CERT_DOMAIN 错误,我们必须确认例外情况才能让人们进入。

我比较了这两个证书,应该显示出来并被我们网络外部的人看到的正确证书是 cloudfare 证书。内部显示的证书是 DigiCert SHA2 安全服务器 CA 证书,其通配符掩码为 *.magazine.io

我确实知道它正在尝试查找 cloudfare 证书,但 *.magazine.io 以某种方式阻止它获取证书。我的老板更新了我们网站 www.example.com 的证书。

我与支持人员讨论了这个问题,他们一直说 Digicert 证书以某种方式卡在我们的网络上,这是有道理的,因为只有在内部我们才会遇到问题,但我查看了我们的 DNS 服务器中的认证数据存储,Digicert 证书确实出现了,但我删除了它们并刷新了 DNS,但似乎没有起作用。

所以我的问题是,你们认为这是我的网络上卡住的东西吗?如果是的话,它会卡在哪里(到目前为止还没有找到它)或者你们认为也许那个坏证书附加在他们给我们的默认域上,并告诉我们为其添加一个 cname 记录。此外,当我打开 Web 浏览器并输入 URL 时https://live-example.magazine.io它没有给我一个安全错误并且锁变成绿色,但这是因为通配符证书上有名称*magazine.io所以它显示正常,但是当我输入www.example.com时它没有给我正确的更新证书。

无论如何,如果您以前遇到过这个问题,或者您对它可能是什么有任何想法,我将非常感谢您的任何意见,我有点被这个问题难住了。

谢谢,

答案1

您是否使用CNAMEA键入 DNS 中的记录并不重要。没有恶意的 DNS 会劫持任何证书,因为它们在不同的协议上运行。

问题与 Web 服务器有关。在纯 HTTP 连接中,浏览器从Host:标头中的地址栏发送主机名,Web 服务器根据该信息选择正确的虚拟主机配置。

在发送此信息之前,TLS 连接已建立,这导致 Web 服务器使用它在您的配置中找到的第一个证书(在本例中为通配符证书)。然后,在收到标头后,它仍然可以为您提供正确的网站。

以前解决这个问题的唯一方法是给每个证书设置不同的 IP 地址。直到服务器名称指示 SNI,TLS 的扩展,允许客户端在其 SSL 握手的第一个消息中包含请求的主机名。

SNI 自 2007 年 10 月 OpenSSL 0.9.8f 以来就一直存在。多年来,所有主流浏览器都支持它。您可以在阿帕奇,它得到了Nginx自 0.5.23 开始,并于IIS 8.0

相关内容