我正面临着该curl命令的SSL问题.我想使用我的SSL客户端证书和私钥来访问URL.
这是我的命令:
$ curl -k -v "https://myurl.com/" --cert ./certificate.pem --key ./private.key
* About to connect() to xx.xx.xx.xx port 23444 (#0)
* Trying xx.xx.xx.xx... connected
* Connected to xx.xx.xx.xx (xx.xx.xx.xx) port 23444 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
* warning: ignoring value of ssl.verifyhost
* Unable to load client key -8178.
* NSS error -8178
* Closing connection #0
curl: (58) Unable to load client key -8178.
Run Code Online (Sandbox Code Playgroud)
密钥是密码保护的,curl不要求我输入密码,这很奇怪.即使我传递了密码--pass,我仍然会得到同样的错误.
似乎--key没有考虑参数,因为如果我替换了foo.key,我的文件系统上不存在,我仍然得到相同的错误.
但是,如果使用: …
我正在尝试使用curl命令通过代理连接到安全的Web服务,但是我收到以下错误:
无法加载客户端证书-8018.
完整日志:
[e-ballo@myserver]# curl -v -x proxy01.net:8080 https://endPointURL.com/SOAP --key ./cert.crt --cert ./cert.crt -capath=/etc/pki/tls/certs
* About to connect() to proxy proxy01.net port 8080 (#0)
* Trying 10.0.3.64... connected
* Connected to proxy01.net (10.0.3.64) port 8080 (#0)
* Establish HTTP proxy tunnel to endPointURL.com:443
> CONNECT endPointURL.com:443 HTTP/1.1
> Host: endPointURL.com:443
> User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.14.3.0 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
> Proxy-Connection: Keep-Alive
>
< HTTP/1.0 200 Connection established
<
* Proxy replied OK to CONNECT request
* Initializing NSS with …Run Code Online (Sandbox Code Playgroud)