Clash在拦截HTTPS流量时常遇证书信任问题,本文详解Windows与macOS系统证书导入步骤,解析TUN模式与系统代理的证书差异,并提供YAML配置片段与常见问题排查方案。
为什么需要配置HTTPS证书信任
Clash作为国际网络加速工具,在开启MITM(中间人攻击)解密功能时,必须生成自签名根证书并导入系统信任区,未完成Clash HTTPS证书信任配置的用户,浏览器会提示"您的连接不是私密连接",导致跨境办公需求下的学术资源访问中断。
TUN模式与系统代理的证书差异
两种代理模式对证书的信任层级要求不同:
系统代理:仅影响应用程序层HTTP/HTTPS流量,部分浏览器(如Chrome)会自动调用系统证书存储,但Firefox需单独配置。
TUN模式:通过虚拟网卡接管所有流量(含UDP/游戏流量),强制要求系统级证书信任,未正确配置时,Windows Defender会拦截加密连接。
证书导入操作步骤
Windows系统配置
- 打开Clash客户端,进入
Settings→System Proxy→Install Certificate - 导出证书文件(通常为
ca.crt)至桌面 - Win+R运行
certmgr.msc,导入至"受信任的根证书颁发机构" - 重启浏览器验证锁形图标
macOS系统配置
- 双击导出的
.crt文件,钥匙串访问选择"系统"钥匙串 - 双击导入的证书,展开"信任"选项,设置为"始终信任"
- 输入管理员密码保存
- 终端执行
sudo security trust-settings-import刷新缓存
代理组与分流规则配置
完成证书信任配置后,建议优化YAML配置提升稳定性:
proxy-groups:
- name: Auto-Select
type: url-test
url: http://www.gstatic.com/generate_204
interval: 300
proxies:
- Node-A
- Node-B
- name: Fallback
type: fallback
proxies:
- Node-A
- Node-B
rules:
- DOMAIN-SUFFIX,google.com,Auto-Select
- IP-CIDR,192.168.0.0/16,DIRECT
- GEOIP,CN,DIRECT
- MATCH,Fallback
代理组类型选择:
select:手动切换节点,适合固定线路需求url-test:自动测速选优,适合多节点负载均衡fallback:故障自动转移,保障跨境办公连续性
分流规则优先级:DOMAIN精确匹配 > DOMAIN-SUFFIX后缀匹配 > IP-CIDR段匹配 > GEOIP国家码 > MATCH兜底。
常见问题排查(FAQ)
现象:浏览器提示"NET::ERR_CERT_AUTHORITY_INVALID" 原因:证书未导入系统根证书区,或Clash生成的证书与当前配置不匹配 解决方法:删除旧证书重新导出,确保证书指纹与Clash日志中显示的一致
现象:TUN模式开启后部分应用无法联网 原因:应用使用证书固定(Certificate Pinning),拒绝自签名证书 解决方法:在Clash配置中排除该应用流量,或切换至系统代理模式
现象:macOS更新后证书失效
原因:系统安全策略重置,钥匙串信任设置被覆盖
解决方法:重新执行证书导入流程,并运行sudo killall -9 networkd重置网络服务
节点订阅配置建议
完成HTTPS证书配置后,建议选择支持TLS 1.3的节点服务商以匹配证书加密强度,对于4K视频流媒体需求,优先选择具备BGP中转的订阅线路;游戏场景则建议测试节点延迟后使用url-test自动组。
定期更新订阅链接可确保分流规则与证书配置保持同步,避免因节点域名变更导致证书验证失败,选择提供SubConverter转换工具的供应商,可自动优化Clash YAML格式与通用格式的兼容性。
