【发布时间】:2019-08-04 00:13:12
【问题描述】:
我已经使用这些命令创建了一个 SSl 证书:
openssl genrsa -out kc_ca-key 2048
openssl req -new -out san_domain.csr -key kc_ca-key -config openssl.cnf
openssl x509 -req -days 3650 -in san_domain.csr -signkey kc_ca-key -out kc_ca-cert -extensions v3_req -extfile openssl.cnf
openssl.cnf 文件包含通用名称、国家名称、主题替代名称和所有此类信息。 在浏览器中,我可以在导入此证书后安全连接,但是当我使用相同的证书运行 curl 命令时,出现以下错误:
NSS 错误 -8156 (SEC_ERROR_CA_CERT_INVALID) * 颁发者证书无效。 * 关闭连接 0 curl: (60) 颁发者证书无效。 更多细节在这里:http://curl.haxx.se/docs/sslcerts.html
curl 默认执行 SSL 证书验证,使用“bundle” 证书颁发机构 (CA) 公钥(CA 证书)。如果默认 捆绑文件不够用,您可以指定一个备用文件 使用 --cacert 选项。 如果此 HTTPS 服务器使用由 CA 签名的证书 捆绑包,证书验证可能由于以下原因而失败 证书有问题(它可能已过期,或者名称可能 与 URL 中的域名不匹配)。
如何解决此错误
【问题讨论】:
-
有问题吗?
标签: ssl curl openssl ssl-certificate