# ERR_CERT_AUTHORITY_INVALID：杀毒软件 HTTPS 扫描导致的证书报错

> 会扫描 HTTPS 的杀毒软件网页防护会重新签发证书，可能让所有网站都报证书错误。如何确认是它造成的，以及在不丢掉防护的前提下解决。

Source: https://ssl.sh/zh/errors/antivirus-https-scanning-ssl-error/
Last updated: 2026-11-10

**会扫描 HTTPS 的杀毒软件和安全套件，夹在浏览器和每个网站之间，把每个网站的证书换成它自己签发的。** 正常时你察觉不到；一旦它的根证书不在浏览器里、版本过旧或配置出错，就会一下子很多网站都报证书错误。这是本地问题，不是网站的问题。

## 先判断是网站的问题还是你设备的问题

检测显示网站证书正常、浏览器里的证书颁发者却是安全软件，就是本地拦截。挑一个报错的网站，用 [SSL 检测](https://ssl.sh/zh/tools/ssl-checker/) 查：

```bash
curl ssl.sh/example.com
```

检测显示的是正常的公开证书，就在浏览器里打开证书（点警告页的详细信息或地址栏的锁），看“颁发者”。写着你安装的安全软件的品牌，或者“Web Shield”“SSL scanning”“Personal Root”之类的字样，就确认是本地拦截。

## 原因

多数情况是安全软件的根证书没装进浏览器的证书库。下面按出现频率列出 4 种情况。

### 1. 根证书没装进浏览器的证书库

软件把根证书装进了 Windows 或 macOS，却没装进 Firefox，或者浏览器更新后集成被重置。结果是 Chrome 正常、Firefox 报错，或者反过来。

### 2. 软件太旧，生成的证书被拒绝

老版本可能用 SHA-1 签名、弱密钥或缺少扩展，新浏览器会拒绝（[NET::ERR_CERT_INVALID](https://ssl.sh/zh/errors/net-err-cert-invalid/)、[NET::ERR_CERT_WEAK_SIGNATURE_ALGORITHM](https://ssl.sh/zh/errors/net-err-cert-weak-signature-algorithm/)）。

### 3. 根证书被删除或过期

各种“清理优化”工具、重置浏览器配置，或者根证书本身到期，都会让软件继续用一张没人信任的根证书签发。

### 4. 对新版 TLS 支持有缺陷

有些拦截引擎处理不好 TLS 1.3、HTTP/2 或新的密钥交换方式，导致 [ERR_SSL_PROTOCOL_ERROR](https://ssl.sh/zh/errors/err-ssl-protocol-error/) 或 [PR_END_OF_FILE_ERROR](https://ssl.sh/zh/errors/pr-end-of-file-error/)。

## 在各浏览器/系统上的样子

| 浏览器 | 显示内容 |
|---|---|
| Chrome / Edge / 360 / QQ 浏览器 | 很多网站报 [NET::ERR_CERT_AUTHORITY_INVALID](https://ssl.sh/zh/errors/net-err-cert-authority-invalid/)，或者协议错误 |
| Firefox | [MOZILLA_PKIX_ERROR_MITM_DETECTED](https://ssl.sh/zh/errors/mozilla-pkix-error-mitm-detected/) 或 [SEC_ERROR_UNKNOWN_ISSUER](https://ssl.sh/zh/errors/sec-error-unknown-issuer/) |
| Safari | “此连接非私人连接” |
| 程序（Git、Python、Java） | 每个 HTTPS 请求都证书校验失败 |

## 在自己电脑上怎么修

多数情况下升级软件或只关闭 HTTPS 扫描就能解决，不需要卸载安全软件。

**1. 把安全软件升级到最新版**，然后重启浏览器。

**2. 如果软件有修复浏览器组件的选项，运行一次。**

**3. 只关闭 HTTPS 扫描功能。** 在网页防护设置里找类似“HTTPS 扫描”“扫描加密连接”“SSL/TLS 过滤”“加密网页扫描”的选项。实时文件防护保持开启。国内部分安全软件的“网购保护”“浏览器防护”模块也可能涉及这一功能，按同样思路排查。

**4. Firefox 用户**只有在确认那张根证书属于你主动安装的软件后，才在 `about:config` 里开启 `security.enterprise_roots.enabled`。

**5. 清理已卸载软件残留的根证书**（Windows 运行 `certmgr.msc` → 受信任的根证书颁发机构；macOS 打开钥匙串访问 → 系统）。

## 站长怎么修

只要 `curl ssl.sh/example.com` 显示证书链有效，服务器就不用改。客服看到用户截图里的颁发者是某个安全软件时，就能判断是这种情况，把这一页发给用户即可。
