如何禁用一个根证书

以吊销 CNNIC 根证书为例来说明在各个平台吊销根证书的方法,有如下方法:

全自动可疑证书吊销工具

GitHub上的Revoke China Certificates项目。这是最简单的方法。具体参见https://github.com/chengr28/RevokeChinaCerts

Windows平台(适用IE、Chrome、Safari)

(1)运行Windows的证书管理器(到命令行执行certmgr.msc)。

(2)选中“受信任的根证书颁发机构”=>“证书”。

(3)查看右边的证书列表,找到CNNIC证书

(4)选中CNNIC证书,点右键。在右键菜单中点“属性”。

(5)在跳出的属性对话框中,选中“停用这个证书的所有目的”,然后确定。

注:上述操作仅对当前用户生效。如果你的Windows系统中有多个常用的用户帐号,要对每一个用户进行上述设置。

OS X(适用Safari、Chrome)

请到“实用工具”=>“钥匙串访问”=>“系统根证书”=>“证书”,找到CNNIC的证书并双击,改为“永不信任”。

Linux(适用Chrome)

对于Debian和Ubuntu系统,以管理员权限进行如下操作:

方法1:运行命令dpkg-reconfigure ca-certificates会出现一个图形界面,把CNNIC证书不选,并确认。

方法2:编辑/etc/ca-certificates.conf文件,把CNNIC证书对应的行删除或注释掉。然后用命令update-ca-certificates使之生效。

注:对于其它Linux发行版本,也有类似操作。

清理Firefox的证书

不论是在哪个操作系统下,只要你用的是Firefox浏览器(它的证书体系独立于操作系统的),则需要执行如下步骤:

(1)从菜单“工具”=>“选项” ,打开选项对话框

(2)切换到“高级”部分,选中“加密”标签页,点“查看证书”按钮。

(3)在证书对话框中,切换到“证书机构”。

(4)里面的证书列表是按字母排序的。把CNNIC打头的都删除。

注:如果某个证书是Firefox自带的,则删除之后,下次再打开该对话框,此证书还在。不过不要紧,它的所有“信任设置”,都已经被清空了。

Android

设置 - 安全 - 受信任的凭据(显示受信任的CA证书),点击进入需要禁用的证书并下拉到最下面,点击 禁用 按钮即可。操作完毕建议清空所有浏览器数据和系统缓存,并重启网络连接。

IOS

iOS没有任何官方提供的方法禁用自带的根证书,请放弃在iOS下禁用根证书的想法。

备注:chrome浏览器默认使用的操作系统的证书管理器,而Firefox使用的是其自己的证书管理器。

学习内容参见于:
https://qdan.me/list/VRIio9hA0FujGWYP