证书体系:DV/OV/EV 证书区别、通配符证书、多 SAN 证书
这一章我们来聊聊证书类型。说实话,很多人在配置 TLS 时只关心「能不能用」,却不清楚不同类型的证书到底差在哪。我过去几年处理过的生产事故里,至少有三成跟证书选型不当有关。嗯,咱们今天就把这事掰开揉碎讲清楚。
核心观点:证书类型决定了浏览器对站点身份的信任程度,也直接影响部署成本和管理复杂度。选错类型,轻则用户看到「不安全」警告,重则 CA 吊销证书。
1. DV / OV / EV 验证级别——信任的三个台阶
为什么同样是 HTTPS,有的网站地址栏出现公司名称,有的只显示一个小锁?答案就在验证级别上。
| 类型 | 验证方式 | 审核内容 | 颁发速度 | 地址栏展示 | 常用场景 |
|---|---|---|---|---|---|
| DV(Domain Validation) | 自动化验证域名所有权 | 只需证明你控制该域名(DNS / 邮件 / HTTP 文件) | 几分钟 | 仅小锁图标 | 博客、个人项目、测试环境 |
| OV(Organization Validation) | 人工审核企业信息 + 域名 | 营业执照、企业注册信息、域名所有权 | 1~3 个工作日 | 小锁 + 公司名称(部分浏览器) | 中小企业官网、电商、API 网关 |
| EV(Extended Validation) | 严苛人工审核 + 法律文件 | 企业合法性、经营地址、电话号码、注册机构确认 | 3~7 个工作日 | 绿色地址栏 + 公司名称 | 银行、支付平台、大型 SaaS |
我个人习惯:生产环境对外服务至少用 OV 证书。DV 证书虽然快,但我曾经遇到过客户因为 DV 证书被钓鱼网站模仿域名,导致用户投诉。DV 只验证「你是域名主人」,但不验证「你是合法的公司」。EV 证书现在其实用得少了,因为 Chrome 和 Safari 已经逐步淡化绿色地址栏的展示,但银行类客户仍然坚持用 EV——说白了,这是合规需求,不是技术需求。
2. 通配符证书——一张证书管所有子域名
通配符证书的字段像 *.example.com。它能保护同一个主域名下的任意子域名,比如 www.example.com、api.example.com、blog.example.com。但注意,它不保护二级子域名(比如 sub.www.example.com 不在覆盖范围内)。
避坑指南:我曾经帮一家电商公司排障,他们的通配符证书只覆盖了 *.example.com,但内部微服务使用了 *.prod.internal.example.com 的域名。结果每次调用都报证书 CN 不匹配。后来不得不补了一张多 SAN 证书才解决。记住:通配符只覆盖一层深度。
通配符证书的优势很明显:
- 管理简单:一张证书管所有子域名,不用每新增一个子服务就去申请证书。
- 降低成本:对于有几十个子域名的站点,比逐个购买单域名证书便宜很多。
但也有坑:
- 安全风险:如果私钥泄露,所有子域名的 HTTPS 都受影响。我曾在一个客户环境里发现他们把通配符证书的私钥放在了 NFS 共享目录里——嗯,那场安全审计的结果不太好。
- 灵活性差:某些 CA 要求通配符证书必须在签发时指定所有 SAN,续期时不能随意增加覆盖范围。
3. 多 SAN 证书——一张证书放多个域名
多 SAN 证书(也叫 UCC 证书)的 Subject Alternative Name 字段里可以列出多个域名。比如一张证书同时包含 example.com、www.example.com、cdn.example.net。SAN 是 X.509 标准里早就支持的特性,现代浏览器只认 SAN,不认 CN 了(事实上从 2017 年起 Chrome 就已经废弃了 CN 匹配)。
多 SAN 和通配符的区别?
| 特性 | 通配符证书 | 多 SAN 证书 |
|---|---|---|
| 覆盖模式 | 模式匹配(* 号) | 精确域名列表 |
| 域名数量 | 理论上不限子域名 | 受限于 CA 允许的条目数(通常 100~250) |
| 跨域 | 只能同一个主域名 | 可以包含不同顶级域 |
| 私钥泄漏影响 | 所有子域名 | 所有 SAN 中域名 |
| 典型场景 | 大规模子域名统一管理 | 合并多个品牌的域名 |
我有一次维护一个跨国项目,需要同时保护 asia.example.com、eu.example.com、usa.example.com 三个不同 TLD(虽然主域名一样),通配符证书就不行,因为它只认同一个主域。最后用了一张多 SAN 证书,每个地域的域名都作为 SAN 列进去。注意:多 SAN 证书每次增加域名都需要重新签发,不像通配符那样自动覆盖新增子域名。
example.com + example.org + thirdparty.com),那就必须用多 SAN 证书。还有一种混搭:一张通配符 + 几张多 SAN,各管一段。4. 证书体系核心结构图
下面这张图把 DV/OV/EV 的验证深度、通配符和多 SAN 的覆盖逻辑串在一起。你可以把它当作决策参考:
5. 综合选型建议
你想想看,如果只是给个人博客配 HTTPS,DV 完全可以。但要是面对企业客户产品,我建议至少 OV。至于通配符和多 SAN 怎么选,我列几个判断标准:
- 所有子域名都在同一个主域下面 → 选通配符,方便省心。
- 需要跨不同主域(比如公司收购了多个品牌) → 选多 SAN。
- 内部服务使用长域名(如
*.k8s.internal.company.com) → 注意通配符只能覆盖一层,必要时考虑多 SAN 或者分域管理。 - 安全性要求极高 → 尽量少用通配符,每个子服务独立证书,或者至少将通配符证书的私钥用 HSM 保护。
最后的提醒:我曾经遇到过一位同事把通配符证书放在一个公共 CI 服务器的共享可写目录里,结果被恶意脚本窃取。第二天整个生产环境的子域名都在被扫描。所以不管你选哪种证书,私钥管理都是命门——嗯,这话我在课程里会反复讲,但希望你一次就能记住。