我在一个安全网站上遇到了一个奇怪的问题,一些用户报告说他们的浏览器显示该网站的 SSL 证书无效。
该网站在运行 Fedora 17 的专用服务器上运行(即,该特定 Web 服务器上运行没有其他虚拟主机),并且 SSL 通过 GoDaddy 进行。
我能想到的唯一可能的原因是,虽然其他(非安全)域名托管在另一台机器上,但它们指向相同的 IP 地址。在此设置中,我在路由器后面有两个具有不可路由 IP 的 Web 服务器,该路由器以专用公共 IP 作为其 WAN 地址。根据端口(80 或 443),路由器将请求转发到适当的 Web 服务器。
让我感到困惑的是,只有部分人报告了错误,而不是所有人都报告了错误,而且我自己也无法重现该问题。我的设置是否存在任何明显问题?或者有人可以建议一种甚至解决此问题的方法吗?
答案1
关于如何检查更接近您的私有 VLAN 的证书,有一个简短的描述...... http://www.cyberciti.biz/faq/test-ssl-certificates-diagnosis-ssl-certificate/
抱歉把这个放在了回答部分...我没有看到“评论”按钮,我认为我需要获得 50 个声誉点才能发表评论。如果有人知道其他情况...我洗耳恭听 :-) 我觉得自己“回答”很愚蠢,而我真正想做的只是评论。
答案2
根据以下信息SSL 检查器,由@David Shwartz 提供(大赞),问题是我的 Apache 配置仅定义了 SSLCertificateFile 和 SSLCertificateKeyFile 指令,缺少 SSLCertificateChainFile 指令,因此没有定义中间证书。很好的解释(太长了,无法在此引用)可以在这里找到。
解决方案是定义SSL证书链文件在我的虚拟主机配置中。因此我的
- SSLCertificateFile /你的证书文件的路径
- SSLCertificateKeyFile /路径/到/你的/密钥/文件
- SSLCertificateChainFile /路径/到/中间/包/文件
现在一切看上去都很好!