NET::ERR_CERT_COMMON_NAME_INVALID 安全证书未指定主题备用名称
NET::ERR_CERT_COMMON_NAME_INVALID security certificate does not specify Subject Alternative Names
如果我的英语不太好,我深表歉意。我正在尝试从我的 IIS 服务器创建证书请求,但每次我都完成了请求。客户端仍然不信任网络服务器。
我来自开发背景,但并不真正关注基础设施运营。所以我的问题可能不正确,由于误解,如果是这样,请随时教育我。以下是我的问题:
在开始证书申请之前,我是否需要将根证书导入 window IIS 服务器?如果是这样,我如何从 Window 证书颁发机构创建或导出根证书?
错误可能是由多种原因造成的
a) 您正在使用 IP 地址访问该网站(假设您拥有基于 URL 的证书)。因此,请尝试使用您已为其购买证书的 URL 进行访问
b) 您已为 xyz.com 购买了证书,但已将其绑定到 abc.com。因此,当访问 abc.com 时,您会收到上述错误。如果有证书请绑定正确的证书。
c) 您已获得多域证书,但您尝试访问的 url 未作为 SAN 添加到证书中。与您的 SSL 提供商谈谈,让他将 URL 作为 SAN 添加到证书中。
虽然这个答案不是 Windows 特定的,但我通过搜索我的问题找到了这个页面,希望以下信息对 Windows 上遇到此问题的人有用=57=],像我一样:
我也遇到过这个问题,虽然接受的答案可能是正确的,但使用 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
文件的其余部分包含在创建 CSR 期间系统会提示您输入的其他 X.509 信息(国家、州等)
现在您可以按如下方式创建 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 详细信息。
参考文献:
答案不应该是 Chrome 强制使用主题备用名称 (SAN) 进行证书验证检查吗?这是一个link,它更多地讨论了 Common Name (CN) 和 SAN
之间的比较
如果我的英语不太好,我深表歉意。我正在尝试从我的 IIS 服务器创建证书请求,但每次我都完成了请求。客户端仍然不信任网络服务器。
我来自开发背景,但并不真正关注基础设施运营。所以我的问题可能不正确,由于误解,如果是这样,请随时教育我。以下是我的问题:
在开始证书申请之前,我是否需要将根证书导入 window IIS 服务器?如果是这样,我如何从 Window 证书颁发机构创建或导出根证书?
错误可能是由多种原因造成的
a) 您正在使用 IP 地址访问该网站(假设您拥有基于 URL 的证书)。因此,请尝试使用您已为其购买证书的 URL 进行访问
b) 您已为 xyz.com 购买了证书,但已将其绑定到 abc.com。因此,当访问 abc.com 时,您会收到上述错误。如果有证书请绑定正确的证书。
c) 您已获得多域证书,但您尝试访问的 url 未作为 SAN 添加到证书中。与您的 SSL 提供商谈谈,让他将 URL 作为 SAN 添加到证书中。
虽然这个答案不是 Windows 特定的,但我通过搜索我的问题找到了这个页面,希望以下信息对 Windows 上遇到此问题的人有用=57=],像我一样:
我也遇到过这个问题,虽然接受的答案可能是正确的,但使用 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
文件的其余部分包含在创建 CSR 期间系统会提示您输入的其他 X.509 信息(国家、州等)
现在您可以按如下方式创建 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 详细信息。
参考文献:
答案不应该是 Chrome 强制使用主题备用名称 (SAN) 进行证书验证检查吗?这是一个link,它更多地讨论了 Common Name (CN) 和 SAN
之间的比较