curl访问使用私有证书https的网址报 (35) SSL connect error

举例用curl访问 12306会报错
引用
curl: (60) Peer certificate cannot be authenticated with known CA certificates

通过命令 :curl -v https://kyfw.12306.cn 验证证书库是否有效


正常的互联网证书可能会出现证书无效:Peer certificate cannot be authenticated with known CA certificates
解决办法是将该证书的公钥.pem文件内容,追加到/etc/pki/tls/certs/ca-bundle.crt

通过浏览器访问点地址栏上的证书 点详细信息,弹出框里点详细信息->复制到文件,导出一个cer文件
调用下面命令转换pem
引用
openssl x509 -inform der -in xxx.cer  -out xxx.pem


将证书信息导入系统
引用
cat xxx.pem >> /etc/pki/tls/certs/ca-bundle.crt


因为有些证书中含有网站地址,需要修改host文件映射IP和域名
修改/etc/hosts
引用
echo "192.168.1.10 xxx.cn" >> /etc/hosts


保存后linux访问
引用
curl https://xxx.cn
就可以看到返回结果

如果出错 curl: (35) SSL connect error 需要更新nss (Mozilla Network Security Services 网络安全服务)
PS:如果是内网机器无法访问互联网需要增加dns解析
引用
echo "nameserver 114.114.114.114">> /etc/resolv.conf


更新nss
引用
yum update nss

可以解决 curl 35 的错误

猜你喜欢

转载自happysoul.iteye.com/blog/2369817