使用 Surge iOS 以及 Surge Mac 开启 MitM 配置 CA 证书抓包 Https 内容

Surge 有很多强大的功能,MitM 是其中之一,本篇介绍如何在 iOS 以及 Mac 上配置 CA 证书。官方给的建议是先在 Mac 上新建 CA,然后导入 iOS 中。不过当时 iOS 直接生成的功能未完成,此次使用的是在 iOS 端直接生成,再导入到 Mac 中,个人觉得相对方便些。

iOS:

首先在 iOS 中生成新证书

生成新证书后选择 Install CA Certificate to System

将证书安装好之后,需要信任证书。

在通用 - 关于最下面的证书信任设置中开启证书

至此证书设置就完成了,下面去 Surge 界面里开启 MitM,在 hostname 里添加你想要抓包的域名即可,抓包的结果可以在分析中查看。

Mac:

欧由于使用了 iOS 生成证书,如果你的设置是使用 iCloud 同步的话,可以在 Surge 的配置文件最下方中找到 MitM 的信息。将 ca-p12 的值保存到文本文件 ca-p12 中,在 Terminal 使用命令

base64 --decode ca-p12 > Certificates.p12

s生成 p12 证书文件,打开 Keychain Access.app,点击 文件-导入项目将刚才生成的 p12 文件导入。

输入密码导入成功后会显示在列表中

将 CA 拖入 System 中,否则 Safari 会不识别

双击证书,选择总是信任

不信任的话会报错

至此 Mac 端的证书也配置完成了。尝试登陆抓包显示如下:

登陆时候的验证码

Surge 某特殊功能只是其小小的一块,而其强大的调试诊断能力,才是它最大的价值体现。

官方参考:https://medium.com/@Blankwonder/surge-mitm-5281d8ace79d