本文详解Shadowrocket解密HTTPS功能的配置流程,涵盖证书生成、安装、信任设置及全局路由模式选择,帮助用户实现安全的网络调试与跨境办公需求。
功能原理与适用场景
Shadowrocket解密HTTPS并非用于突破网络限制,而是基于MITM(中间人)技术实现本地流量分析,该功能适用于iOS应用调试、API接口分析或学术资源访问时的网络诊断,启用后,应用会生成自签名证书替换原始TLS证书,从而解析加密流量内容。
注意:此功能涉及隐私敏感操作,建议仅在受信任网络环境下临时开启,完成后立即关闭解密开关。
配置流程详解
生成CA证书
进入Shadowrocket设置 → 证书 → 生成新的CA证书,系统会自动创建shadowrocket.crt根证书文件,有效期默认365天。
[MITM] enable = true ca-passphrase = shadowrocket ca-p12 = <证书文件路径>
安装描述文件
点击"安装证书"按钮,Safari会自动下载配置描述文件,进入iOS设置 → 通用 → VPN与设备管理,找到Shadowrocket CA证书并安装,此时证书状态显示"未信任"。
信任根证书
关键步骤:设置 → 通用 → 关于本机 → 证书信任设置 → 开启Shadowrocket CA完全信任,iOS 13+系统必须手动授权,否则解密功能无法生效。
配置解密规则
在配置文件的[MITM]段落添加hostname规则:
hostname = *.example.com, api.github.com, *.googleapis.com
支持通配符和具体域名混合配置,建议仅添加必要域名,避免全量解密导致性能损耗。
全局路由模式深度解析
Shadowrocket的全局路由设置直接影响解密流量的走向,四个选项差异显著:
配置模式:依据规则列表分流,解密后的HTTP/HTTPS流量按域名规则匹配代理或直连,适合精细化控制跨境办公流量。
代理模式:强制所有流量经过节点,包括本地解密后的明文,适用于需要全量网络加速的调试场景,但耗电较高。
直连模式:绕过代理直接连接,解密流量不经过节点服务器,适合仅分析本地应用行为,不涉及国际网络加速的情况。
场景模式:基于Wi-Fi/蜂窝网络自动切换策略,例如公司Wi-Fi下启用解密直连,移动数据下关闭解密功能,实现环境自适应。
常见问题排查
现象:安装证书后仍显示"TLS握手失败" 原因:iOS未开启完全信任,或hostname规则未覆盖目标域名 解决方法:双重检查证书信任设置;在MITM规则末尾添加通配符测试,确认后替换为精确域名
现象:解密开启后特定App无法联网 原因:应用启用SSL Pinning证书锁定,检测到非原生证书即拒绝连接 解决方法:将该App域名加入跳过解密列表(Exclude Host),或临时关闭解密功能
现象:电池消耗异常加快 原因:全量解密HTTPS导致CPU持续高负载运算 解决方法:精简hostname列表,仅保留必要域名;关闭"解密UDP流量"选项
节点选择与性能优化
对于需要配合Shadowrocket解密HTTPS进行跨境办公的用户,节点选择直接影响调试效率,建议优先选择支持TLS 1.3的专线节点,延迟控制在150ms以内可保证证书交换流畅。
普通中转节点在解密场景下可能出现证书验证超时,表现为间歇性断流,高端IEPL专线虽成本较高,但能提供稳定的TCP连接,适合长时间抓包分析。
推荐配置:在节点备注中添加#MITM标签,配合场景模式设置"解密时自动切换专线",实现智能路由。
安全关闭与清理
完成Shadowrocket解密HTTPS操作后,务必执行:设置 → 证书 → 删除CA证书,并清除已安装的描述文件,长期保留自签名证书存在中间人攻击风险,特别是设备越狱或安装企业证书环境下。
定期清理配置文件的[MITM]段落,避免历史规则干扰正常代理功能,对于学术资源访问或常规网络加速需求,建议保持解密功能关闭状态,仅通过标准代理规则实现流量转发。
