![](/img/trans.png)
[英]Can't use www.google.com NET::ERR_CERT_COMMON_NAME_INVALID SSL certificate is not valid
[英]NET::ERR_CERT_COMMON_NAME_INVALID security certificate does not specify Subject Alternative Names
如果我的英语不太好,我深表歉意。 我正在尝试从我的 IIS 服务器创建证书请求,但每次我完成请求时。 客户端仍然不信任 Web 服务器。
我来自开发背景,并没有真正涉足基础设施运营。 所以我的问题可能是错误的,由于误解,如果是这样,请随时教育我。 以下是我的问题:
在开始证书申请之前,我是否需要将根证书导入窗口 IIS 服务器? 如果是这样,我如何从 Window 证书颁发机构创建或导出根证书?
虽然这个答案不是特定于 Windows 的,但我通过搜索我的问题找到了这个页面,希望以下信息对像我这样在 Linux 上遇到这个问题的人有用:
我也遇到过这个问题,虽然接受的答案可能是正确的,但是使用 SAN(主题备用名称)生成 CSR(证书签名请求)的过程需要一些解释。
有几篇文章详细介绍了这一点,但基本上,您需要创建一个文件,我们称之为ssl.conf
,其中包含必要的信息,包括 SAN 详细信息,您将在创建 CSR 时通过参数将这些信息传递给openssl
命令.
(这假设您已经生成了一个密钥)。
ssl.conf
的内容可以简单如下。 请注意底部详细介绍 SAN 的部分。 调整所有参数以满足您的要求。
[req]
default_bits = 2048
prompt = no
default_md = sha256
req_extensions = req_ext
distinguished_name = dn
[ dn ]
C=US
ST=New York
L=Rochester
O=End Point
OU=Testing Domain
emailAddress=your-administrative-address@your-awesome-existing-domain.com
CN = www.your-new-domain.com
[ req_ext ]
subjectAltName = @alt_names
[ alt_names ]
DNS.1 = your-new-domain.com
DNS.2 = www.your-new-domain.com
文件的其余部分包含其他 X.509 信息,您将在 CSR 创建期间提示您输入(国家、州等)
现在您可以按如下方式创建您的 CSR:
openssl req -new -sha256 -out private.csr -key private.key -config ssl.conf
其中private.csr
指的是您的新 CSR 文件, private.key
指的是您应该已经生成的密钥,而ssl.conf
是上面的文件。
您可以按如下方式验证新 CSR 的内容:
openssl req -text -noout -verify -in private.csr
然后,您将在控制台上看到 CSR 的详细信息,包括 SAN 详细信息。
参考资料:
错误可能是由于多种原因
a) 您使用 IP 地址访问网站(假设您拥有基于 URL 的证书)。 因此,请尝试使用您为其获取证书的 URL 进行访问
b) 您已为 xyz.com 购买了证书,但已将其绑定到 abc.com 。 因此,当访问 abc.com 时,您会收到上述错误。 如果有,请绑定正确的证书。
c) 您已获得多域证书,但您尝试访问的 url 未作为 SAN 添加到证书中。 与您的 SSL 提供商交谈并要求他将 URL 作为 SAN 添加到证书中。
答案不应该是 Chrome 强制要求使用主题备用名称 (SAN) 进行证书验证检查吗? 这是一个链接,其中详细介绍了通用名称 (CN) 和 SAN 之间的比较
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.