0

随着 Firefox 的最新升级(版本 58),我们的产品安装在 Firefox 上开始“失败”。基本上,我们的安装程序代码将查询 Firefox 以查看我们的证书是否已经安装,nss-certutil -L -n name如果没有找到,我们然后安装证书nss-certutil -A ....

这是我们自签名的“根”证书,仅用于与本地节点服务器通信。到目前为止,这一直运行良好(我可以在 58 版中复制 .. 一些客户报告也可以在 57 版中复制)。安装脚本运行没有错误,但 Firefox 无法使用与节点服务器的安全连接进行连接。

从 options/security/certificates 查看已安装证书的列表,它不存在,但如果我运行nss-certutil -L -n name它,它就会被列出。

显然配置文件在版本 58 中已更改,但我找不到与此相关的任何内容。

另一条信息是我可以手动导入证书,这很有效,所以证书本身似乎没问题。

困惑和没有想法。有什么想法吗?

4

1 回答 1

0

看起来最新的 FF 使用 SQL Lite 数据库进行证书信任,但nss-certutil默认情况下使用旧格式。

您需要sql:在 FF 配置文件路径之前指定明确的 ' ' 前缀。例子:

-A -n "Test CA" -i "C:\test\ca1.cer" -t "CT,," -d sql:"C:\Users\test\AppData\Roaming\Mozilla\Firefox\Profiles\mgr140m4.default"

请参考
https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/Reference/NSS_tools_:_certutil和 -d 选项说明

于 2018-04-10T20:28:22.203 回答