我有自己的CA证书和客户端证书,并且一直在使用cURL正常格式成功地进行操作:
curl --cacert /etc/myca.crt --cert /etc/myclient.pem:mypassword --cert-type PEM --get https://myhost.com
现在,由于本问题范围之外的原因,我拥有相同的客户端证书,但是使用openssl已经去掉了密码。使用openssl我已经验证了新证书的正确性,并且可以在除了cURL以外的应用程序中使用它来进行SSL连接,但是我无法使其与cURL一起工作。
如果我不输入密码:
curl --cacert /etc/myca.crt --cert /etc/myclient.pem --cert-type PEM --get https://example.com
我收到一个错误提示,显示“curl: (58) 无法使用客户端证书(未找到密钥或密码错误?)”
我还尝试过以下方法:
curl --cacert /etc/myca.crt --cert /etc/myclient.pem: --cert-type PEM --get https://example.com
但我仍然遇到同样的错误。
我正在Perl脚本中调用cURL,所以我需要找到一种不会提示我输入密码的方法。我使用的是RHEL 5上的cURL 7.15.5。
谢谢。