我只是想知道通配符 SSL 证书是否一定需要有一个包含需要应用 SSL 证书的站点的域名的通用名称。
例如,对于以下内容:
域名:测试域名
子网站:
- www.testdomain.com
- mobile.testdomain.com
- mytestenvironment.testdomain.com
我的通配符证书是否一定需要有一个通用名称*.testdomain.com
?
答案1
是的,对于通配符证书,您的通用名称应该是 *.yourdomain.com。
基本上,通用名称表明您的证书适用于哪个域,因此它必须指定实际的域。
澄清:它不应该“包含”网站的域名,而应该是网站的域名。我猜你的问题没什么不同,我只是想澄清一下,以防对域名应该是什么或证书的用途存在误解。
答案2
实际上,您应该使用证书部分dnsName
中的条目subjectAltName
来指定 FQDN,而不是 的 CN 部分。自 2000 年发布 RFC 2818 以来,为此目的subject
使用已被弃用。引用subject
第 3.1 节:
如果存在 dNSName 类型的 subjectAltName 扩展,则必须将其用作身份。否则,必须使用证书主题字段中的(最具体的)通用名称字段。虽然使用通用名称是现行做法,但已弃用,并鼓励证书颁发机构改用 dNSName。
在服务器证书验证上下文中, 的内容唯一相关的情况是,如果中subject
没有包含,这种情况在撰写本文时已被弃用了 17 年。dnsName
subjectAltName
通配符证书的使用已被弃用,如下所示RFC 6125 第 7.2 节:
本文档指出,通配符“*”不应包含在所呈现的标识符中,但可以由应用程序客户端检查(主要是为了与已部署的基础设施向后兼容)。
对多个服务使用相同的私钥通常被认为是不好的做法。如果其中一个服务被破解,其他服务的通信将面临风险,您将不得不为所有服务替换密钥(和证书)。
我建议 RFC 6125 作为有关此事的良好信息来源。