Mac系统Charles抓包设置,解决IOS无法上网/无法显示图片问题
问题描述
最近在学习使用Charles抓包工具抓取APP的数据,发现一个问题,按常规设置并添加证书后,手机可以上网了,但是访问微信公众号或者公司的APP,会出现无法显示图片的情况。
我从网上搜索了很多教程均无解,后来尝试自己捯饬,居然成功了。现在分享经验如下。
说明:
这个是自己随意尝试弄出来的,具体原理未知,更加尴尬的是去掉这些配置手机居然也是好的。
所以如果有比较懂的朋友可以留言给我指点一二。
我后面学习有补充的话也会更新。
文章先大概说了一下Charles基础配置,最后写我自己尝试的操作步骤。已经配置好的直接看第八步。
一、Charles安装
网上很多教程,不多赘述
二、Mac端代理设置
2.1.启动Charles
2.2.Proxy-macOS Proxy:勾选表示本机代理,我只需要抓取手机端APP,因此去掉勾选
三、Mac端安装证书
3.1.根据图示选择安装证书
3.2.输入密码
3.3.我已经安装成功了,前面显示蓝色加号,首次安装需要双击,点击同意
3.4安装好证书后,把证书导出保存到本地,后面要用到(解决问题的关键之一)
3.5设置密码
3.6保存到本地
四、代理设置
4.1.代理设置,设置端口号,默认8888
4.2.SSL代理设置
*.*表示不限访问地址
五、iPhone端设置
5.1.设置-无线局域网,找到连接的无线网,注意,手机和电脑需要在同一个无线网络中
5.2.点击无线网后面的小叹号
5.3.找到HTTP代理设置,默认是自动,点击后进入详情,改成手动
5.4查看当前电脑使用的IP地址(在Mac上系统偏好设置-网络,打开页面就可以看到当前的IP地址)
5.5在服务器一栏输入Mac的IP地址,端口号输入8888(如果在4.1修改了默认端口,按4.1那一步配置的端口号输入)
输入后点击保存
六、启动iPhone
启动iPhone后发现无法上网,这里需要重新启动一下Mac上的Charles,弹出一个确认访问的弹框,点击同意。(我自己的默认连接了没弹,网上找了一个图片)
同意后手机部分APP可以用,访问百度等还是受限,需要安装手机端证书
七、iPhone端证书安装
7.1
根据图片提示,在手机端打开浏览器,输入chls.pro/ssl
根据页面提示,下载证书并安装
7.2iPhone手机必须进行这一步,信任证书
在系统偏好设置,通用,关于本机,证书信任设置中,找到刚刚安装的证书,开启信任
到这一步设置完成,很多网络都可以正常访问了,但是仍会发现有一小部分页面的图片无法显示出来,需要做后面的配置
八、客户端进程工具设置
在客户端进程工具中,添加自己的iPhone客户端,
host地址从iPhone-系统偏好设置-无线局域网,当前连接的网络,点击小叹号,在详情页面查看
端口号:不知道可以填*
注意红框圈起来的地方,点击选择,默认会找到3.4步保存到本地的证书
点击OK
设置完成后再次尝试访问微信公众号文章,发现图片可以正常显示了。