【发布时间】:2020-03-02 15:50:39
【问题描述】:
环境:
Red Hat Enterprise Linux Server release 7.7 (Maipo)
# openssl version
OpenSSL 1.0.2g 1 Mar 2016
因此使用 OpenSSL 生成自签名证书,并将 cacert.pem 放在 /etc/pki/ca-trust/source/anchors/ 下。
现在根据update-ca-trust 的人所说,应该运行cmd 将证书添加到信任库中,并且证书将添加到/etc/pki/ca-trust/extracted/ 下。
运行上述 cmd 后,我看到证书仅添加到 /etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt。但是大多数像 curl 这样的应用程序都会在/etc/pki/ca-trust/extracted/openssl/ca-bundle.crt 上引用 OS ca 信任,它链接到 /etc/pki/tls/certs/ca-bundle.crt。
curl -v https://172.21.19.92/api
* About to connect() to 172.21.19.92 port 443 (#0)
* Trying 172.21.19.92...
* Connected to 172.21.19.92 (172.21.19.92) port 443 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
* CAfile: /etc/pki/tls/certs/ca-bundle.crt
我知道传递--cacert 选项将是克服它的一种方法,但我想知道为什么update-ca-trust 只更新ca-bundle-trust.crt 而不是ca-bundle.crt 或java Keystore 提取一个/etc/pki/ca-trust/extracted/java/cacerts
【问题讨论】:
-
我也遇到过这个问题。 CentOS 7.7.1908 :(
-
你的解决方案是什么?
-
为了回答我自己的评论,我只是手动将证书添加到 ca-bundle.crt
标签: ssl curl openssl redhat ca