ios手机上按照以下步骤信任 HTTPS 证书
1. 安装
安装Fiddler软件
2. Fiddler配置
2.1 端口
点击 Tools > Options 按如下配置勾选 启用远程访问 等并且设置端口,这里设置8888
![](https://i-blog.csdnimg.cn/blog_migrate/b1baa69c81494515f266f2cdd31e7aaf.png)
2.2 重启
重启Fiddler。这里官网额外加了一步配置注册表,经过验证不配置也可正常使用
如果配置可以按照以下方法:
win+r进入运行命令界面,输入REGEDIT进入注册表
找到HKEY_CURRENT_USER\SOFTWARE\Microsoft\Fiddler2文件夹后,在文件夹下创建key ReverseProxyForPort,设置值为端口号(以十进制方式)
2.3 访问
访问 http://127.0.0.1:8888 会打开如下页面
3. 手机端配置
3.1 代理IP
首先确保你的电脑和手机在同一个局域网(wifi)中
打wifi,设置代理IP和端口号为你的电脑的IP和你Fiddler的端口号
配置代理:手动
服务器:<安装fiddler的pc的ip地址>
端口:8888(默认)
点击存储即可。
3.2 安装根证书
然后手机访问 http://ip:8888 此时会打开跟上面一样的页面,点击 FiddlerRoot certificate
安装证书后,会发现已经可以访问到http协议的站点在Fiddler中也可以抓到包,但是由于iPhone的安全设置,还不能访问https
的站点.
3.3 信任证书
iPhone系统更新到iOS 10.3以后,设置fiddler代理抓包,会出现无法抓取https请求,app请求失败的问题,这是因为在iOS 10.3之前,当你将安装fiddler的自定义证书后,iOS会默认信任,不需要进一步的设置。而iOS 10.3之后,安装新的自定义证书默认是不受信任的。
由于iPhone的安全设置,如果要信任已安装的自定义证书,就需要去手工设置。
设置方式:设置->通用->关于本机->证书信任设置-> 找到 fiddler证书,打开信任开关
4. PC端ios13兼容软件下载安装
正常情况 https抓包成功,app不再访问网络失败。但最近发现 ios 系统 13以上出现即使安装并信任了证书,当用 safari 浏览百度时仍出现是否信任该网站的弹窗。经过一番搜索后发现原来 Fiddler 默认的证书生成工具对移动端可能会出现不兼容的情况,建议安装一个插件CertMaker for iOS and Android
:
iOS devices and Android devices may not work with the default HTTPS interception certificates used by Fiddler. To resolve this incompatibility, you may install a Certificate Generating plugin that generates interception certificates compatible with those platforms.
插件直接下载地址: https://www.telerik.com/fiddler/add-ons
安装完后Fiddler原来的证书就会失效掉,手机上需要重新安装信任,这样就可以抓包了。