微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么不能识别自签名的SSL证书?

我将PEM文件复制到/ usr / local / share / ca-certificates /中,然后运行update-ca-certificates,并validation所得到的证书现在包含在/etc/ssl/certs/ca-certificates.crt中由curl-config –ca打印的文件。 我也证实openssl s_client -connect example.com:443所打印的证书与我的PEM文件是一样的。 但是我仍然继续得到“错误:14090086:SSL例程:SSL3_GET_SERVER_CERTIFICATE:证书validation失败”消息。 即使我使用curl的–cacert选项(如http://curl.haxx.se/docs/sslcerts.html中所述)来告诉它使用哪个证书,也会发生这种情况。

如果我使用curl -k完全禁用了证书validation,但是我不想这样做,因为我正在尝试编写一个testing工具来testingSSL。

如果我在lynx中访问相同的URL,它通常会抱怨,如果有任何SSL错误,它工作正常。 但是我不能仅仅使用Lynx来testing这个testing工具,除非我能find一些方法让Tornado的AsyncHTTPClient使用Lynx而不是libcurl。 安装自签名证书似乎没有任何意义,满足Lynx而不是curl。

我在使用Vagrant的VirtualBox中使用Ubuntu 12.04 LTS; 它curl7.22.0。 SSL终结代理是在同一台机器上运行的Nginx / 1.3.13,域名通过/ etc / hosts中的条目指向127.0.0.1。

创build用于testinglocalhost的自签名证书,并让浏览器接受它

如果自签名CA根证书导入机器存储,我可以在没有testing模式的64位Windows上安装自签名驱动吗?

在Windows XP上将自签名证书安装为受信任的根

信任自签名证书来validation服务器(Windows上的.NET客户端)

如何使用.pfx和.cer文件创build自签名证书?

任何线索可能是什么问题? 谢谢。

解决Nodejs https.request生产中的自签名证书错误

如何为Google ARC“分离”应用程序安装自签名证书?

创build一个x509.v3自签名的SAML签名和encryption证书,Windows 8 R2

当我们使用cURL检索未使用CA签名证书的HTTPS站点时,会出现以下问题。

curl https://example.selfip.com curl: (60) SSL certificate problem,verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify Failed More details here: http://curl.haxx.se/docs/sslcerts.html

当然,这可以简单地通过使用-k选项来克服。

解决方案:

步骤1

确定您的OpenSSL安装使用的目录。

root@ubuntu:~# openssl version -d OPENSSLDIR: "/usr/lib/ssl"

第2步

切换到该目录并列出目录内容。 你应该看到一个名为“certs”的目录。

root@ubuntu:~# cd /usr/lib/ssl && ls -al

第3步

切换到该目录。

root@ubuntu:/usr/lib/ssl# cd certs

列出目录内容。 您应该从符号链接中看到证书实际存储在/usr/share/ca-certificates 。

步骤4

切换到/usr/share/ca-certificates目录并在其中添加自签名证书(例如:your.cert.name.crt)

第5步

切换到/etc目录并编辑文件ca-certificates.conf 。

root@ubuntu:# cd /etc root@ubuntu:# nano ca-certificates.conf

将你的your.cert.name.crt添加文件( ca-certificates.conf )并保存。

最后一步:

执行程序update-ca-certificates –fresh 。

注意:您可能希望在执行命令之前备份/etc/ssl/certs 。

root@ubuntu:# update-ca-certificates --fresh Clearing symlinks in /etc/ssl/certs...done. Updating certificates in /etc/ssl/certs....done. Running hooks in /etc/ca-certificates/update.d....done.

在目标HTTPS网站上进行卷曲测试,现在就可以运行。

资源

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐