是否可以在系统范围内或者至少在 Firefox 上禁用证书颁发机构?

是否可以在系统范围内或者至少在 Firefox 上禁用证书颁发机构?

我想禁用受与我交战的国家控制的 CA,我该怎么做?我马上就看到一个。即使你确信没有 CA,问题仍然存在,问题不在于是否有匹配的 CA。

sudo dpkg-reconfigure ca-certificates

不显示about:certificateFirefox 页面上列出的 Yandex CA,遗憾的是无法禁用它。它由Unizeto Technologies S.A.波兰颁发,并且已列在ca-certificates列表中。

答案1

在本地 Firefox 用户配置文件中删除不需要的证书

当然可以,我会复制答案...要从您的个人 Firefox 证书存储中删除不需要的根 CA,您必须libnss3-tools通过以下方式安装和删除不需要的根 CAcertutil

$ sudo apt install libnss3-tools --yes
$ certutil -D -d ~/.mozilla/firefox/{profile}/ -n "{CA nickname}"

然而,我想专注于更通用、与用户无关且系统范围的解决方案。

对所有 Firefox 用户使用系统范围的证书存储(并为所有人删除不受信任的根 CA)

默认情况下,Firefox 使用自己的证书存储,其中包含硬编码的根 CA。首次启动时,这些证书将被复制到用户的 Firefox 配置文件中。对于这些内置证书,PKCS-11使用一个模块:

Firefox 默认 PKCS-11

可以通过用该库替换 Firefox 库来PKCS-11更改这些内置模块。libnssckbi.sop11-kit

$ sudo apt install p11-kit --yes
$ sudo mv /usr/lib/firefox/libnssckbi.so /usr/lib/firefox/libnssckbi.so.backup
$ sudo ln -s /usr/lib/x86_64-linux-gnu/pkcs11/p11-kit-trust.so /usr/lib/firefox/libnssckbi.so
$ sudo dpkg-divert --package firefox --add --rename \
  --divert /usr/lib/firefox/libnssckbi.so.backup /usr/lib/firefox/libnssckbi.so

简而言之:

  • 安装p11-kit
  • 将默认PKCS-11设备库从移动libnssckbi.solibnssckbi.so.backup
  • p11-kit创建库链接libnssckbi.so
  • 当 Firefox 收到更新时,注册包转移以避免链接被替换

完成这些步骤后,重新启动 Firefox 并检查PKCS-11模块和注册的根 CA:

p11-kit 模块

如果受信任的根 CA 被修改sudo dpkg-reconfigure ca-certificates,所有 Firefox 实例都会立即受到影响。

答案2

建议的问题有所帮助,但那里的答案不包含相关的例子:

sudo apt install libnss3-tools
certutil -D -d ~/.mozilla/firefox/{profile}/ -n "{CA nickname}"

西蒙,你能否复制这个答案并进行任何修改,然后我会将其标记为已解决?

相关内容