一、下载
官网下载:
下载之后双击文件安装
二、注册
help->register
填入Registered Name和License Key
注册之后需要重启charles
三、电脑安装证书
help->ssl proxying->install charles root certificate
选择本地计算机,点击下一步
存储选择【受信任的根证书颁发机构】
点击完成
提示导入成功
退出后重新查看证书状态,状态更新为没有问题。
四、proxy配置
选择proxy->ssl proxy settings
点击加号添加
host和port都设为*
设置成功后,点击done
五、手机端安装证书
根据提示,手机先连接这个ip和端口号,然后用浏览器访问chls.pro/ssl ,下载证书,iOS10以上的设备,在安装证书之后,还需要去设置->通用->关于->证书信任设置中,信任该证书。
六、遇到的问题
1.Android和iOS手机连接ip和端口号后,浏览器访问chls.pro/ssl,都提示浏览器打不开该页面,因为无法连接服务器。
这种情况可以尝试把证书下载到电脑上,然后推到手机上安装。
Help->SSL proxying-> Save Charles root certificate
注意这里还有个坑,不要保存到桌面或者C盘,会没有反应。
可以选择一个D盘或者其他盘,就能看到保存成功的.pem文件了
手机连接电脑,Android手机用adb命令
adb push D:\.pem /sdcard/Download/在手机上,设置中搜索凭据,进入到【加密和凭据】,选择【从存储设备安装】,选择【CA证书】,找到刚才的.pem文件,点击安装,提示安装成功。
验证charles证书是否正确安装
去受信任的凭据->用户中可以看到已安装的证书。
iOS可以使用爱思助手把证书放到手机文件里。
iOS手机不支持安装.pem的证书,可以改成.crt
设置-通用-VPN与设备管理-安装该文件,通用”>“关于本机”>“证书信任设置,信任证书,就完成了。
iOS尝试多种方法,均无法安装证书。
1.通过爱思助手将.crt证书放进文件中,
2.通过邮箱发送,在邮件中打开,只有下载选项,没有安装选项
无法安装证书,无法进行后续的步骤
最后解决方案:用qq把.pem证书发送到手机上,手机点击其他应用打开,然后保存到文件
再去文件里打开,点击证书,提示已下载,去设置里面安装。
去设置里安装+信任,能够安装成功。
2.手机安装了证书,电脑上仍然抓不到请求,手机端提示网络异常
在网上找到一种解决办法是,设置防火墙允许的应用,
但是这个我设置了还是不行。
3.charles不弹allow弹窗,应该是这个问题,实际没有连接成功,所以抓不到包
有一种说法是,把手机wifi的ip添加到charles的proxy-access control settings里
这个我加了 但是也没啥用
看到有人说断了wifi重连
我尝试关闭代理,重新添加代理-------不行
关闭wifi开关,重新打开------不行
最后尝试忘记公司网络,重新连接员工wifi,连接后发现Ip变了,又在access control settings里重新添加了ip,然后突然就可以了。(之前也重启过charles,不知道有没有关系)
不过自始至终没弹出来过allow弹窗。。。。。但是现在能抓到接口了
4.遇到证书装不上的问题
Android手机,oppo手机,adb连接不上,adb devices没反应。
把证书下载下来,注意不能保存到桌面,会看不到,可以保存到D盘。
然后手机连接电脑,打开手机存储目录,把证书放到Download目录下。
这里又遇到一个问题,在手机的文件管理中,能够看到这个证书,但是从设置-安全-从存储设备安装凭据,进入下载目录,看不到这个证书。这是因为在下载目录内没有给证书命名,命名后就能在设置里看到了。