ssl - 对于 DNS 和 SSL,我是否需要为每个 (DNS RR) A 记录提供单独的证书?

标签 ssl dns subdomain cname

所以我们公司希望将我们的云服务器分离到单独的环境中,所以 www.foo.com、test.foo.com 和 dev.foo.com。 [我们甚至可能想将我们的子域分解成更多的子域。]我的老板想知道公司需要多少证书(用于 SSL)。

我深入研究了子域,看起来像是 DNS RR(域名服务器资源记录)的问题。我看过有关 A 记录和 CNAME 记录以及它们如何相互作用的注释。我认为 A 和 CNAME 记录的混合应该足以分离出我们的命名空间。

但是证书呢,我们是否需要为每个 A 记录提供 SSL 证书?我的老板热衷于降低成本(所有老板都一样)。

最佳答案

验证是根据您的 URL 中的名称完成的。如果您的 URL 包含 IP 地址,则您必须拥有该 IP 的证书,如果您有名称,则该证书必须包含名称或与名称匹配的通配符。它不会执行任何 DNS 查找来查找不同的名称以进行验证。这些东西一起意味着例如:

  • 如果您将 URL 与 www.example.comfoo.example.comexample.com 和所有这些 IP 一起使用必须包含在证书中,即使它们位于同一台服务器的末端。不能通过将 www.example.com 设为 example.com 的 CNAME 或通过 IP 的 RR 记录来减少在 URL 中包含您使用的所有名称的要求指向 example.com
  • 通配符只匹配最左边的一个标签。即 *.example.com 匹配 foo.example.com 但不匹配 example.comwww.foo.example.com 。并且您只能有一个最左边的通配符,即没有 foo.*.example.com 甚至 *.*.example.com
  • 您可以将多个主题组合到证书中,ypu 可以使用通配符,或者您可以为每个名称使用不同的证书。如果您有不同的名称和相同的 IP 地址,最后一个选项可能会出现问题,因为客户端需要支持 Server Name Indication (SNI) .

关于ssl - 对于 DNS 和 SSL,我是否需要为每个 (DNS RR) A 记录提供单独的证书?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31750782/

相关文章:

ssl - 如何将私钥转换为 RSA 私钥?

python2.7 : [SSL: UNKNOWN_PROTOCOL] unknown protocol

docker - Kubernetes/minikube 无法 ping 通同一集群中的 pod,但 nslookup 可以工作

apache - 如何在 ubuntu 上使用 apache 正确设置网站和域(带有子域)?

c# - 基于域和主机名的 ASP.NET MVC 路由

css - wordpress style.css 加载但不使用

ssl - jaspersoft studio 6.2 XML 数据源 ssl 错误

dns - Softlayer ISP 阻止网络在连接到 wp_remote_post Wordpress 时丢失

dns - 强制 gulp 使用不同的主机名

node.js - 在 Node.js 中使用动态子域