我在网上搜索了有关 SSL 问题的清晰而简洁的答案,但无济于事。因此,下面是答案:
我有一个 Web 服务,需要 SSL 支持身份验证页面。根级域没有“www” - 即 secure://domain.com - 但本地化页面使用“language-code.domain.com”,即 secure://ja.domain.com
所以我至少需要一个支持 secure://*.domain.com 的通配符 SSL 证书
但是,我们在 sandbox.domain.com 也有一个公共沙盒环境,我们也需要在本地化域下支持它 - 因此 secure://ja.sandbox.domain.com 也需要工作。
前任管理员设法购买了通配符 SSL 证书.domain.com,但主题备用名称为“domain.com”。因此,我考虑尝试获取 SAN 定义为“domain.com”和“.*.domain.com"。
但现在我感到很困惑,因为似乎有单独的 SAN 证书,也称为 UCC 证书。
有人可以澄清是否有可能获得具有附加 SAN 字段的通配符证书,以及最终支持的最佳方式是什么:
secure://domain.com 安全://.domain.com 安全://.*.域名.com
拥有数量最少(且最便宜!)的 SSL 证书?
谢谢!
答案1
首先,SAN证书=UCC证书,都只是带有SubjectAltName字段的证书。
第二,通配符。.domain.com 在大多数浏览器中都无法使用。您需要获取两个通配符证书(一个用于 *.sandbox.domain.com,一个用于 *.domain.com),或者获取一个用于 *.domain.com 的通配符证书,并让您的 SSL 提供商将特定的 SubjectAltName 设置为 ja.sandbox.domain.com。我认为 DigiCert 和 GlobalSign 提供了此功能。
答案2
根据http://ssl.com从技术上来说,将 UCC 和通配符证书结合起来绝对是可行的。本质上,他们建议使用 UCC 证书,其中包含一个包含通配符的主题替代名称:*.domain.com - 他们确实注意到,您需要额外付费才能在 UCC 中使用通配符。
要覆盖无限的子域名,只需在购买 UCC 时在通用名称字段或 SAN(主题备用名称)中创建通配符域名(即 *.sitename.com)...您甚至可以在 SAN 字段中输入其他通配符,例如 *.sub1.sitename.com
只需在购买 UCC(或创建 UCC)时在通用名称字段中创建通配符域(即 *.sitename.com)和/或将其作为 SANS(主题备用名称)。大多数 CA 会向您收取每个通配符域作为标准通配符证书的费用。
例如,Comodo 在购买 UCC 证书时指出:
可以将通配符域名添加到 UCC,每个域名需支付 399.00 美元的附加费。
让我们加密
从以下http://LetsEncrypt.com讨论板上似乎在 2015 年晚些时候推出时也可能包含此功能
答案3
要记住的主要事情:
- UCC/SAN 可以包含大量条目(某些证书颁发机构最多可包含 2000 个)
- 大多数 CA 的 UCC 确实可以包含通配符(IIRC GoDaddy 不允许在 UCC 中使用通配符)
- 添加到 UCC 的通配符会产生费用,但可能比单独的通配符证书更便宜(例如,ssl.com独立通配符收费 299 美元,但 UCC 中包含的通配符收费 258 美元)
- 如果您需要添加/删除/更改域名,大多数 CA 都允许您在证书有效期内剪切和更改 UCC 条目(又称为“重新颁发”证书),而且通常无需为此支付额外费用(同样,YMMV - SSL.com/Comodo/namecheap 提供免费重新颁发,GoDaddy 希望您购买新的 UCC 来添加名称)
所以这取决于很多因素,但一个包含所有域名(包括通配符)的 UCC 可能比大量不同的证书更好/更容易管理。
(另外,仅供参考 - Let's Encrypt 似乎没有设置处理通配符现在。)