在 iPhone 上抓取 HTTPS,
一切都在手机上完成:安装应用、信任它的证书、选择要解密的主机、打开 VPN。解密后的请求一秒钟后就会出现在你的仪表盘里——无论是 Wi-Fi 还是蜂窝网络。
读取 iPhone HTTPS 的传统做法是桌面代理:一台连在同一 Wi-Fi 的笔记本、手机上手动设置的代理、手工安装的证书,以及一旦切到蜂窝网络就断掉的会话。Busymate DevTools 把笔记本从这条链路里拿掉了。应用借助 Apple 的 NetworkExtension 直接在设备上运行系统级抓包引擎,只解密你列入清单的主机,并把每条请求推送到一个随时随地都能打开的网页仪表盘。
本指南带你从一部空手机走到第一条解密请求。它使用 VPN 模式,即同时覆盖 Wi-Fi 和蜂窝网络的设备端隧道。如果你更想通过 Wi-Fi 代理抓包,应用也提供 PAC 模式;在相关处会提到,但完成本指南并不需要它。
你需要
不需要电脑、数据线或越狱。只需四样东西,全都在手机上或浏览器标签页里。
一部运行当前 iOS 版本、可访问 App Store 的 iPhone 或 iPad。
一个 Busymate 账号——用 Apple 登录,或用邮箱和密码登录。登录本身就会把手机配对到你的仪表盘。
在「设置」应用里花两分钟安装证书描述文件,并为它开启完全信任。
你想读取的 API 的主机名。只有你添加的主机会被解密,其余一切原样通过。
按顺序
六个步骤,按此顺序进行。应用的就绪卡片会告诉你证书部分何时完成,你永远不必猜。
- 01
安装应用并接受抓包同意书
从 App Store 安装 Busymate DevTools 并打开。首次启动时会看到网络抓包同意书。Apple 要求这一步,因为应用会检查设备的流量;在你接受之前,应用不会配对也不会开始抓包。这是一次性的关卡——如果将来有任何东西试图在未经你同意的情况下启动隧道,同一张同意书会再次出现。
- 02
登录——这一步就完成了配对
在手机配对完成之前,登录页会覆盖整个应用。选择「通过 Apple 登录」,或输入邮箱和密码。没有单独的激活步骤,也没有要输入的验证码:应用用你的登录会话换取一份长期有效的设备凭据,存入设备钥匙串,然后关闭登录页。
在任意浏览器里打开仪表盘,查看 Devices 标签页——手机已经在那里,并显示为 Online。你可以在任一端重命名它;名称会实时双向同步,设备在重命名后依然保持自己的身份。


- 03
安装证书描述文件
主屏幕底部是就绪卡片。此时它显示黄色盾牌和 Not Ready,因为手机还不信任应用用来解密 HTTPS 的证书。点按卡片打开设置步骤,然后点按 Download。
应用会在 Safari 中打开一个配置描述文件。iOS 会显示「已下载描述文件」的提示;打开「设置」应用,点按顶部的该提示,然后在 Busymate DevTools 描述文件上点按「安装」。这与你可以在下方地址手动获取的描述文件是同一个。
应用为你打开的证书描述文件 texthttps://busymate.net/ca.mobileconfig - 04
为证书开启完全信任
只安装描述文件是不够的。iOS 要求对任何用户安装的根证书单独、明确地打开信任开关,而这正是大多数人漏掉的一步。前往「设置」,然后「通用」,然后「关于本机」,然后「证书信任设置」,在完全信任列表中打开 Busymate DevTools。
回到应用。设置面板打开期间它每隔几秒重新检查一次信任状态,每次回到前台也会检查,所以一两秒内就绪卡片就会变绿并显示 Ready。主屏幕会把「设置未完成」的提示换成抓包控件。信任状态在重装应用后依然保留——每部手机只需做一次。


- 05
添加你想解密的主机
信任证书并不会打开一切。应用只解密 SSL 代理列表里的域名;其他连接照常通过,但保持加密,显示为一把闭合的锁,只有主机名和请求计数。通过就绪卡片上的齿轮打开列表——Settings,然后 Tunnel,然后 SSL Proxying——点按 Add Domain 并输入一个主机。
纯主机名只精确匹配该主机。开头的星号加点号会匹配父域名以及任意层级的所有子域名,这通常正是 API 场景所需要的。同一个 Tunnel 区域还有两个相关开关:Inspect All Requests 记录手机发出的每一个连接,而不只是列表中的主机;MITM All Hosts 解密所有 HTTPS 主机——开销更大,除非确有需要,否则最好保持关闭。Ignore Hosts 则把遥测之类的后台噪音从信息流里完全隐藏。
你也可以在仪表盘里管理这份列表:在那里编辑设备的 SSL 代理域名,改动会实时推送到手机,这样同事不用碰设备就能替你添加主机。


- 06
打开 VPN,读取流量
在主屏幕上,Status 一行有 VPN 开关。打开它。你会短暂看到 Syncing,然后是 Connected;应用图标稳定为一个绿色圆环并带有 VPN 标记,iOS 状态栏里也会出现同样的 VPN 标记。从这一刻起,手机发出的每条请求,无论走 Wi-Fi 还是蜂窝网络,都会推送到你的仪表盘,切换应用时隧道也保持开启。
使用你正在调试的应用。然后看仪表盘:新行在事件发生的瞬间出现在信息流顶部,每条请求一行,设备侧边栏可以让你只关注这一部手机。点击任意一行即可打开完整的请求和响应——头部和正文,JSON 已格式化。在手机上,Settings,然后 Tools,然后 Network Log 会以域名分组显示同样的抓包结果,每个你选择解密的主机都带有打开的锁。


可能出现
几乎所有卡住的设置都属于这五种情况之一,而且每一种都有可见的迹象。
安装描述文件后就绪卡片仍是黄色
完全信任还没打开。在 iOS 里,安装描述文件和信任开关是两个独立步骤;回到「设置」、「通用」、「关于本机」、「证书信任设置」,打开 Busymate DevTools。一旦完成,卡片会自动变绿。
某个主机显示闭合的锁且没有正文
该主机不在 SSL 代理列表里,或者你是在 VPN 运行时添加的。添加它,然后关闭再打开 VPN,让隧道读取新列表——PAC 模式的抓包不需要重启,但隧道需要。
主机被解密后,你正在调试的应用拒绝连接
该应用固定了自己的证书并拒绝其他任何证书,任何设备端抓包都无法绕过。把该主机从列表中移除,让它重新以加密方式通过,然后阅读证书固定指南,了解你仍然能看到什么。
PAC 卡片显示 Unavailable — VPN active
这是预期行为,不是错误。VPN 与 PAC 互斥;隧道开启期间 iOS 会隐藏 Wi-Fi 代理状态,应用如实地说明了这一点。如果你想改用 PAC,请关闭 VPN。
仪表盘里什么都没有
按顺序检查三道关卡:已接受同意书,手机在 Devices 标签页显示 Online,Status 开关显示 Connected。如果应用在高流量下短暂无法连接后端,它会显示一个小横幅,标出丢弃的条目数,所以永远不会出现无声丢失。
大家常问
我真的不需要 Mac、数据线或代理设置吗?
是的。抓包、解密和推送全部在手机上运行。只有当你选择在电脑上查看仪表盘时才会用到电脑——而手机浏览器同样可以。
它能抓到蜂窝网络流量和其他应用的流量吗?
在 VPN 模式下可以:设备端隧道覆盖手机上的每个应用,Wi-Fi 和蜂窝网络都包括在内。PAC 方案只覆盖 Wi-Fi,因为它是 Wi-Fi 代理设置而不是隧道。
信任证书之后是不是所有内容都会被解密?
不是。信任只是让解密成为可能。应用只解密 SSL 代理列表里的主机,除非你有意打开 MITM All Hosts。固定证书的应用无论如何都保持加密。