Mitmproxy证书安装不一致致HTTPS请求拦截失败求助
Mitmproxy证书信任问题排查与修复方案
针对你遇到的第三台服务器(Debian 11/Ubuntu 22.04)mitmproxy证书无法被游戏服务器信任的问题,可按以下步骤排查修复:
验证系统CA证书池的实际生效状态
- 先确认证书文件本身无损坏:
输出应包含完整的证书信息,无报错。openssl x509 -in /usr/local/share/ca-certificates/mitmproxy-ca.crt -noout -text - 检查系统SSL证书目录是否生成了对应软链:
正常应显示类似ls /etc/ssl/certs/ | grep mitmproxyxxxxxx.0的哈希命名软链,指向你的mitmproxy证书文件。如果没有,手动生成:sudo c_rehash /etc/ssl/certs/
- 先确认证书文件本身无损坏:
确认游戏服务器的证书信任路径
部分服务进程不会直接使用系统默认CA池,而是有独立的证书配置:- 查看游戏服务器的启动参数或配置文件,检查是否有指定自定义CA文件/目录的选项(如
--ca-file、ssl_ca等)。 - 如果存在自定义路径,将
mitmproxy-ca.crt复制到对应目录,确保权限为644,然后重启游戏服务器。
- 查看游戏服务器的启动参数或配置文件,检查是否有指定自定义CA文件/目录的选项(如
检查tsocks代理配置的一致性
- 对比第三台服务器与正常服务器的
/etc/tsocks.conf配置,确保server、server_port、server_type完全匹配mitmproxy的监听设置。 - 用tsocks测试HTTPS请求的证书信任情况:
观察输出中是否有"SSL certificate verify ok"相关提示,若仍报错,说明tsocks代理下的请求未正确加载系统CA证书。tsocks curl -v https://目标游戏域名
- 对比第三台服务器与正常服务器的
重新生成并部署mitmproxy根证书
- 清理旧证书:
sudo rm /usr/local/share/ca-certificates/mitmproxy-ca.crt sudo update-ca-certificates --fresh - 重新生成mitmproxy证书:启动一次mitmproxy(
mitmproxy),会在~/.mitmproxy/目录生成新证书,复制到系统目录:sudo cp ~/.mitmproxy/mitmproxy-ca.pem /usr/local/share/ca-certificates/mitmproxy-ca.crt sudo chmod 644 /usr/local/share/ca-certificates/mitmproxy-ca.crt sudo update-ca-certificates
- 清理旧证书:
排查系统SSL环境变量干扰
检查是否存在自定义SSL环境变量导致系统CA池未被使用:echo $SSL_CERT_FILE $SSL_CERT_DIR若输出非空,可临时取消这些变量后测试游戏服务器:
unset SSL_CERT_FILE SSL_CERT_DIR # 重启游戏服务器后测试
内容的提问来源于stack exchange,提问作者Adactyl
相关产品推荐
相关产品推荐

