ssl - Openshift trustwave 中间 ssl 证书问题

标签 ssl https ssl-certificate openshift

所以我在 openshift 上有一个应用程序,我正尝试在上面启用 SSL。我已经从我以前的主机那里获得了 SSL 证书,它与 Trustwave 一起使用并且似乎工作正常。

所以我为 my-domain.com 设置了一个别名并在域提供商上将 CNAME 重定向到 openshift 并且工作正常。现在我得到了一个包含证书不同文件格式的 zip 文件:

  • 我的域名.com.cer
  • 我的域名.com.der
  • 我的域名.com.p7b
  • 我的域名.com.pem
  • 链.cer

我在 .pem 文件中也有一个私钥,使用 my-domain.com.pem 似乎所有设置都很好, chain.cermy-private-key.pem .但是,如果我随后访问任何 SSL 分析站点,他们都会说没有中间证书,甚至似乎认为我没有使用 trustwave 证书,而我肯定是这样。我知道 openshift 使用 SNI 所以我真的不担心 *.rhcloud.com问题,但我很困惑为什么它认为我的证书不是来自 trustwave(当它是)以及为什么它找不到中间体。

除 FF 之外的大多数浏览器都不关心这一点并且可以正常显示挂锁,但 Firefox 显示无效 SSL 屏幕并警告用户而不是显示该站点。

我尝试访问 trustwave 站点并下载他们的中间证书 dvca2.crt但即使尝试仍然会出现同样的问题。

我有点困惑为什么它不起作用,我尝试了 zip 文件中的其他文件类型,例如 my-domain.com.cer但还是一样。所以我没有想法,想知道是否有其他人遇到过类似的问题或知道是什么原因造成的。

Example feedback from SSL analysis

最佳答案

好吧,经过大量搜索后解决了这个问题,Trustwave 仍然报告错误,但所有浏览器似乎都接受了。

所以我得到了主证书文件(我使用的是 my-domain.com.pem),将内容复制并粘贴到一个新文件中(类似于 combined.pem >) 然后打开你的中间文件(chain.cer 对我来说)并将其复制并粘贴到组合文件的末尾,因此它应该如下所示:

-- Begin Cert
...
-- End Cert
-- Begin Cert
...
-- End Cert

然后将这个新的组合文件作为您的主证书文件上传到 openshift,忽略链文件并添加您的私钥。现在应该一切正常。

关于ssl - Openshift trustwave 中间 ssl 证书问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30968714/

相关文章:

Javascript 客户端身份验证(使用 SSL,不使用 OAuth2)?

node.js - 如何在基于 Node.js 镜像的 Docker 容器中使用 Let's Encrypt

c# - 证书内存泄漏

c++ - 什么是客户端证书以及从哪里获取它,如何使用它连接到服务器?

Java SSL 客户端-服务器 : unable to find valid certification

ssl - pfx 文件是否可以包含不属于叶证书路径的证书?

image - 带有 SSL 的 Xamarin.Forms Image.Source

python-2.7 - cURL 与请求(SSL 问题?)

django - 如何使用 Django/nginx 部署仅限 HTTPS 的站点?

关闭端口 80 的 nginx 上的 http 和 https 重定向