考虑以下示例:
我们创建了自己的 CA 证书(自签名)并导入浏览器信任库。我们通过此 CA 证书签署了具有 SAN 扩展名的证书,并具有以下域:
- DNS:*.dev
- DNS:*.*.dev
无论证书中是否存在 CN,甚至是否缺少整个 DN。访问域https://test.dev时仍然在浏览器中出现以下错误:
火狐 45.8.0:
test.dev uses an invalid security certificate. The certificate is only valid for the following names: *.dev, *.*.dev Error code: SSL_ERROR_BAD_CERT_DOMAIN
Chrome 58.0.3029.81(64 位):
NET::ERR_CERT_COMMON_NAME_INVALID
当浏览器接受连接时,SAN 中只有一个适用于三级域的通配符:
- DNS:*.secondlevel.dev
浏览器不接受 SAN 中的多级通配符:
- DNS:*.*.secondlevel.dev
有没有办法在 SAN 扩展中使用多级通配符,或者 SAN 扩展中的通配符有什么限制?