NSS error -12286
我使用从 HTTPS 下载文件时遇到错误curl
。
我可以毫无问题地下载相同的文件,wget
因此我可以排除任何防火墙或黑名单问题。
已经尝试过,但没有运气,选项-k
和--cipher ecdhe_ecdsa_aes_128_gcm_sha_256
,根据此处的 Qualys SSL Labs 测试服务器工具,这是服务器首选密码:https://www.ssllabs.com/ssltest/analyze.html?d=intribunale.net&latest
这是cURL
日志:
# curl -v https://www.intribunale.net/immobili
* About to connect() to www.intribunale.net port 443 (#0)
* Trying 104.27.150.214... connected
* Connected to www.intribunale.net (104.27.150.214) port 443 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
* CAfile: /etc/pki/tls/certs/ca-bundle.crt
CApath: none
* NSS error -12286
* Closing connection #0
* SSL connect error
curl: (35) SSL connect error
我的库版本是:
# curl -V
curl 7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.19.1 Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
Protocols: tftp ftp telnet dict ldap ldaps http file https ftps scp sftp
Features: GSS-Negotiate IDN IPv6 Largefile NTLM SSL libz
答案1
解决方案是使用 CentOS 6 的第三方存储库或从源代码构建升级到 cURL 7.42
答案2
我们在使用 curl 7.19.7 时遇到了同样的问题。我们升级了 NSS,它解决了这个问题!
答案3
在具有最新 openssl 软件包 (1.0.1e) 的 CentOS 6 上,您应该更新 nss (yum update nss),如上面 DiegoG 所写。命令 update-ca-trust 也很有帮助。如果您通过 php 使用curl - 重新启动您的网络服务器进程/服务(即服务httpd 重新启动)。