为了说明我正在做的事情:
https://www.google.com使用由 Thawte SGC CA 颁发的证书(该证书又由 Verisign CA 颁发)。Internet Explorer 似乎预装了该颁发者证书,但 Firefox(我使用的是 3.5.1)没有。尽管如此,浏览器并没有抱怨网站证书不受信任,因为 Thawte 证书会立即安装。到目前为止一切顺利。
我有一台服务器(使用 Apache),我想在其中完成同样的事情。它也使用来自同一 CA 的证书,并且我让它在 SSL 握手期间发送完整的信任链(使用 httpd.conf SSLCertificateChainFile 指令)。但是,如果中间证书尚未导入 Firefox 的 Authorities 密钥库,它会抱怨站点证书不受信任。
简而言之,我的问题是:我需要做什么才能让 Thawte 证书自动安装,以便浏览器无需提示即可接受站点证书?
答案1
链文件出了点问题。Apache 将发送链文件,该文件必须由浏览器已经信任的 CA 签名,无法添加它。浏览器将验证链,如果链验证成功,则允许由链签名的证书。
Thawte 应该在其支持页面上有供您安装的说明和现成的链文件。
答案2
我相信您需要将 CA 根证书放在服务器上,与服务器证书放在同一位置。