![是否可以在系统范围内或者至少在 Firefox 上禁用证书颁发机构?](https://linux22.com/image/945287/%E6%98%AF%E5%90%A6%E5%8F%AF%E4%BB%A5%E5%9C%A8%E7%B3%BB%E7%BB%9F%E8%8C%83%E5%9B%B4%E5%86%85%E6%88%96%E8%80%85%E8%87%B3%E5%B0%91%E5%9C%A8%20Firefox%20%E4%B8%8A%E7%A6%81%E7%94%A8%E8%AF%81%E4%B9%A6%E9%A2%81%E5%8F%91%E6%9C%BA%E6%9E%84%EF%BC%9F.png)
我想禁用受与我交战的国家控制的 CA,我该怎么做?我马上就看到一个。即使你确信没有 CA,问题仍然存在,问题不在于是否有匹配的 CA。
sudo dpkg-reconfigure ca-certificates
不显示about:certificate
Firefox 页面上列出的 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
更改这些内置模块。libnssckbi.so
p11-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.so
到libnssckbi.so.backup
p11-kit
创建库链接libnssckbi.so
- 当 Firefox 收到更新时,注册包转移以避免链接被替换
完成这些步骤后,重新启动 Firefox 并检查PKCS-11
模块和注册的根 CA:
如果受信任的根 CA 被修改sudo dpkg-reconfigure ca-certificates
,所有 Firefox 实例都会立即受到影响。
答案2
建议的问题有所帮助,但那里的答案不包含相关的例子:
sudo apt install libnss3-tools
certutil -D -d ~/.mozilla/firefox/{profile}/ -n "{CA nickname}"
西蒙,你能否复制这个答案并进行任何修改,然后我会将其标记为已解决?