用户首先要了解通配符证书的基本规则。通配符证书确实能覆盖同一级别的所有子域名,但关键在于"级别"这个概念。比如*.example.com这样的证书,它可以保护任何三级域名,比如mail.example.com或shop.example.com,因为这些都是在二级域名下的三级子域名。 总之通配符SSL证书可以同时适用于二级域名和三级域名,但需要明确理解“级别”的含义以及证书的具体配置。以下是关键点的详细解释:

标准通配符证书(*.example.com):

这种最常见的通配符证书直接保护一个域名及其所有同级子域名。

它保护的是所有三级域名:

mail.example.com

shop.example.com

blog.example.com

anything.example.com

它不保护二级域名本身:

example.com (这个域名本身没有被 *.example.com 覆盖)

它也不保护更深层次的四级域名:

dev.mail.example.com (四级域名)

如何同时保护二级域名(example.com)和三级域名(*.example.com)?

虽然 *.example.com 本身不包含 example.com,但绝大多数证书颁发机构允许(甚至推荐)在签发通配符证书时将基础域名(example.com)作为主题备用名称(SAN)添加到证书中。

最终的证书配置通常是:

通用名称(CN): *.example.com

主题备用名称(SANs):

*.example.com (通配符本身)

example.com (显式添加的基础域名)

这样配置的证书可以保护:

example.com (通过 SAN)

mail.example.com (通过通配符)

shop.example.com (通过通配符)

任何其他三级域名(anything.example.com)

关于“二级域名”和“三级域名”的澄清:

在域名 mail.example.com 中:

.com 是顶级域名 (TLD)

example 是二级域名 (SLD)

mail 是三级域名 (或子域名)

所以,当我们说通配符 *.example.com 保护三级域名时,指的是保护 *.example.com 中的 * 部分(如 mail, shop)。

基础域名 example.com 本身是二级域名。

更深层次的通配符(如 *.*.example.com)?

标准的通配符证书只覆盖一个级别(即一个 *)。

像 *.*.example.com 这样的通配符不是标准且普遍支持的。它试图覆盖所有四级域名(如 dev.mail.example.com, test.shop.example.com),但不覆盖三级域名(如 mail.example.com)或二级域名(example.com)。

如果需要保护不同级别的多个子域名(例如 app.example.com 和 api.us.app.example.com),通常需要:

购买覆盖不同基础域名的多个通配符证书(例如 *.example.com 和 *.app.example.com)。

或者购买支持多个 SAN 条目的通配符证书(多域通配符证书),但这通常成本更高且配置更复杂。

经过上述分析总结一下:

一个标准的通配符证书 *.example.com 本身只保护所有三级域名(如 anything.example.com),不保护二级域名 example.com。

但是,通过将基础域名 example.com 作为 SAN 条目添加到 *.example.com 证书中,该证书就可以同时保护二级域名 example.com 和所有三级域名 *.example.com。 这是非常常见且推荐的配置。

单个通配符证书无法直接覆盖不同级别的子域名(例如同时覆盖 example.com, *.example.com 和 *.*.example.com)。覆盖不同级别需要多个证书或更高级(且更昂贵)的证书选项。

因此,在购买通配符证书时,务必确认

你购买的是 *.yourdomain.com。

要求证书颁发机构将基础域名 yourdomain.com 添加为 SAN(主题备用名称) 到该证书中。

这样你就能获得一个同时适用于你的二级主域名(yourdomain.com)和所有三级子域名(anything.yourdomain.com)的SSL证书了。