【发布时间】:2016-06-01 04:50:41
【问题描述】:
我们有一个 web 应用程序,它获取 XML 文件以根据 XML 模式进行验证。该应用程序在几年前设置的 Ubuntu 服务器上运行。
存在一个问题,即卷曲给定域失败,因为它是证书无法验证。我听到了一些相互矛盾的事情,即问题是在我们这边,还是我们应该联系客户解决问题。
例如,使用 cURL 给出:
(pyenv)vagrant@precise64:~$ curl "https://example.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
curl performs SSL certificate verification by default, using a "bundle"
of Certificate Authority (CA) public keys (CA certs). If the default
bundle file isn't adequate, you can specify an alternate file
using the --cacert option.
If this HTTPS server uses a certificate signed by a CA represented in
the bundle, the certificate verification probably failed due to a
problem with the certificate (it might be expired, or the name might
not match the domain name in the URL).
If you'd like to turn off curl's verification of the certificate, use
the -k (or --insecure) option.
我试图研究可能出了什么问题This SSL checker 说证书颁发机构 (CA) 在某些浏览器中可能不受信任:
并非所有网络浏览器都信任该证书。你可能需要 安装中间/链证书以将其链接到受信任的根 证书。
然后,我使用 browserstack 在多个浏览器中尝试了该 URL,并得到了预测的混合结果 - 请求在某些浏览器上有效,在其他浏览器上失败。
基本上我不确定我们是否应该......
- 找到一些方法来更新我们的“证书包” 服务器。如果这甚至是最佳做法?
- 告诉 example.com 上的人问题出在 他们的结局,他们需要获得完全受信任的证书
折扣选项:
- 仅安装 example.com 的证书
- 在应用程序上关闭 SSL 验证
【问题讨论】: