SSL安全证书

Linux中使用curl命令访问https站点错误和解决方法

1、Peer’s Certificate issuer is not recognized

代码如下:

  1. [root@jiankong ~]# curl -v https://wx.87th.cn- -
  2. CAfile: /etc/pki/tls/certs/ca-bundle.crt
  3. CApath: none
  4. Peer's certificate issuer is not recognized: 'CN=Encryption Everywhere DV TLS CA - G2,OU=www.digicert.com,O=DigiCert Inc,C=US'

2、SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed

  1. [root@jiankong ~]# curl https://wx.87th.cn
  2. curl: (60) SSL certificate problem, verify that the CA cert is OK. Details:

error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed

解决办法是更新本地CA证书库。

方法一:

下载http://curl.haxx.se/ca/cacert.pem 替换/etc/pki/tls/certs/ca-bundle.crt

方法二:

使用update-ca-trust 更新CA证书库。(CentOS6,属于ca-certificates包)

方法三:

解决办法是将签发该证书的私有CA公钥cacert.pem文件内容,追加到/etc/pki/tls/certs/ca-bundle.crt