SSL – 通用名称无法识别

我们最近开始使用subjectAltName创build证书,除了使用CN来识别服务器,我注意到浏览器中的CN识别问题

在我们的情况

  • CN => www.example.com
  • SAN => www.machinename.com

如果我尝试访问使用CN的网站浏览器抱怨证书有错误。

使用SAN工作正常。

我进一步检查了这一点和RFC 6125 ,第6.4.4节规定 –

如上所述,如果所呈现的标识符包括客户端所支持的DNS-ID,SRV-ID,URI-ID或任何特定于应用的标识符types,则客户端不得寻找CN-ID的参考标识符的匹配。 因此,当且仅当所呈现的标识符不包括客户端所支持的DNS-ID,SRV-ID,URI-ID或任何特定于应用的标识符types时,客户端可以作为最后的手段来检查其string表单与主题字段(即CN-ID)的公共名称字段中的标准DNS域名相匹配。

基于此,我得出结论,CN和SAN是 –

  1. 不是免费的,因此
  2. CN应始终是SAN中提供的列表的子集

它是否正确?

编辑:我明白,这是浏览器的具体情况,我正在寻找在现代浏览器(IE11,边缘,铬,Firefox等指导。)

“虽然通用名称的使用是现有的做法,但是已经被废弃,鼓励authentication机构使用dNSName。” RFC 2818

甚至RFC 6125包含以下内容。

“远离包含和检查主题公共名称中域名的string”。 RFC 6125,第一章。 1.5

从CN版本的DNS名称被剥夺,从现在的浏览器,如57版本以来不被识别。

您应该将所有DNS名称移到证书的subjectAltName部分。