iOS开发调试必备,小火箭HTTPS解密配置教程

Shadowrocket(小火箭)的HTTPS解密功能可实现流量分析与接口调试,本文详解证书生成、安装、信任全流程,配合分流规则实现精准抓包,适用于iOS应用开发与网络诊断场景。

HTTPS解密的核心价值

在iOS网络加速与开发调试场景中,Shadowrocket(俗称"小火箭")的HTTPS解密功能是分析加密流量的关键工具,通过中间人代理(MITM)技术,可查看HTTPS请求详情,排查接口异常,优化国际网络加速策略。

证书配置四步流程

生成CA证书

进入Shadowrocket设置 → 证书 → 生成新的CA证书,系统会创建1024位或2048位RSA密钥对,此证书用于解密HTTPS流量,需妥善保管私钥。

安装描述文件

点击"安装证书",选择"复制到剪贴板"或通过AirDrop传输至Mac,也可直接选择"安装",iOS会跳转至设置 → 通用 → VPN与设备管理,显示下载的描述文件。

信任证书设置

关键步骤:进入设置 → 通用 → 关于本机 → 证书信任设置,找到Shadowrocket CA并开启完全信任,iOS 10.3+系统必须手动启用此开关,否则小火箭HTTPS解密功能无法生效。

开启HTTPS解密

返回Shadowrocket,在配置编辑界面添加MITM配置:

mitm:
  enable: true
  ca: Shadowrocket CA
  hostname:
    - "*.example.com"
    - "api.github.com"

Clash代理组与解密协同

当小火箭加载Clash配置时,代理组类型影响解密流量的路由策略:

Select(手动选择):调试特定节点时,手动切换至目标服务器,配合HTTPS解密分析该节点下的API响应。

URL-Test(自动测速):自动选择延迟最低节点,解密流量可记录各节点的TLS握手时间,评估真实性能。

Fallback(故障转移):主节点失效时自动切换,解密日志可捕获连接重置(RST)包,定位故障节点。

TUN模式与系统代理差异

系统代理模式:仅代理HTTP/HTTPS流量,适合浏览器调试,Shadowrocket在此模式下解密Web流量,但无法捕获App的TCP直连。

TUN模式:创建虚拟网卡接管所有流量(含UDP、ICMP),适用于游戏加速与全流量抓包,开启TUN后,HTTPS解密可分析微信、抖音等App的加密接口,但会增加CPU负载。

配置TUN需开启:

tun:
  enable: true
  stack: system
  dns-hijack: true

分流规则优先级写法

精准抓包需配置分流规则,避免解密敏感流量:

rules:
  - DOMAIN,api.stripe.com,DIRECT # 金融类直连
  - DOMAIN-SUFFIX,google.com,Proxy # 指定域名走代理
  - IP-CIDR,192.168.0.0/16,DIRECT # 局域网直连
  - GEOIP,CN,DIRECT # 国内IP直连
  - MATCH,Proxy # 兜底

优先级自上而下匹配,建议将需解密的调试域名置于顶部,使用REJECT或指定代理组。

FAQ常见问题

现象:开启解密后App提示"证书无效" 原因:部分App启用SSL Pinning(证书固定),检测到非原生证书。 解决:在Shadowrocket的MITM配置中添加skip-server-cert-verify: true,或绕过该App不解密。

现象:iOS 15+系统安装证书后仍无法解密 原因:证书未在"关于本机"中完全信任。 解决:设置 → 通用 → 关于本机 → 证书信任设置 → 启用Shadowrocket CA的完全信任开关。

现象:TUN模式下解密导致网速下降 原因:流量先经TUN虚拟网卡,再经MITM解密,双重处理增加延迟。 解决:仅对特定域名开启解密,避免全局MITM;或切换至系统代理模式仅调试浏览器。

节点配置建议

进行HTTPS解密时,建议选择支持TLS 1.3的节点以获得更详细的握手信息,对于需要长期抓包分析的跨境办公需求,可考虑具备专用线路的订阅服务,确保解密过程中连接稳定性,部分高端订阅提供WireGuard协议,在TUN模式下解密效率优于传统协议。

通过合理配置小火箭的HTTPS解密功能,结合Clash的分流策略,可构建高效的iOS网络调试环境,满足学术资源访问与开发测试的双重需求。

您可以还会对下面的文章感兴趣:

暂无相关文章