我最近发现我的*.domain.com
无法在 server1.apps.domain.com 上使用,因为它只能“通配”一个级别,而不是两个。
因此,问题有两个:
- 有证书这种东西吗
*.*.domain.com
? - 这样的证书可以在 server1.apps.domain.com 和 www.domain.com 上使用吗?(例如两个不同级别的深度)
答案1
答案很简单:没有。
根据 RFC,仅支持一个通配符:
匹配使用 [RFC2459] 指定的匹配规则执行
。如果证书中存在给定类型的多个身份
(例如,多个 dNSName 名称,则集合中任何一个的匹配都被视为可接受。)名称可能包含通配符
*,该通配符被视为与任何单个域名
组件或组件片段匹配。例如,.a.com 与 foo.a.com 匹配,但
不与 bar.foo.a.com 匹配。f.com 与 foo.com 匹配,但不与 bar.com 匹配。
但是您可以做的是获取一个 *.apps.domain.com 的通配符证书,它将覆盖 apps.domain.com 的每个子域,并获取另一个 *.domain.com 的通配符证书以覆盖第一级子域。
取自:https://www.instantssl.com/articles/can-you-create-a-wildcard-ssl-certificate-for-two-levels.php:
无法获得“双通配符” SSL 证书的原因是,占位符(星号)只能代表提交给 CA 的名称中的一个字段。毕竟,CA 必须验证所有信息,证书中的变量过多会降低证书提供的安全性和可信度。
此外,这对于 IT 经理和网站所有者也很重要,内部安全不能轻易受到损害。请记住,一旦 SSL 证书到位,任何类型的安全问题都更有可能因内部安全漏洞而发生,在这种情况下,有权访问私钥和证书的人能够设置实际上受 SSL 保护的子域网站。
答案2
您可以在单个证书中拥有多个主题备用名称,每个名称都有不同级别的通配符:
*.域名.com
*.app.域名.com
*.xxx.域名.com
ETC。