Charles抓取https

步骤一:将Charles的根证书(Charles Root Certificates)安装到Mac上。


Help -> SSL Proxying -> Install Charles Root Certificate

步骤二:Mac信任Charles的根证书。

 
未信任的Charles根证书

将使用此证书时,改成“始终信任”,然后点关闭按钮,接下来会让你输入密码,然后直接填写密码即可。

 
信任的Charles根证书

 

步骤三:将Charles证书安装到移动设备上。


 Help -> SSL Proxying -> Install Charles Root Certificate On a Mobile Device or Remote Browser...


 

这时候会弹出一个框,在移动设备的浏览器输入弹框中提供的URL就可以安装Charles证书(这时候需要移动设备已经设置代理)。


 

在移动设备的浏览器中输入上面的URL后会弹出一个确认框,点击“允许”跳转到“设置”页面,安装描述文件即可。

 

步骤四:移动设备信任Charles证书。


 设置 -> 通用 -> 关于本机 -> 证书信任设置


步骤五:Charles设置“Enable SSL Proxying”


 Proxy -> SSL Proxying Settings...


 

在弹出框中选中“Enable SSL Proxying”,然后填入需要抓包的HTTPS的Host和Port,如果需要抓取所有HTTPS,则Host填入“*”,Port一般填“443”即可。

 


可能遇到的问题:

SSLHandshake: Remote host closed connection during handshake
You may need to configure your browser or application to trust the Charles Root Certificate. See SSL Proxying in the Help menu.

 
 

解决办法:

  • 首先用Mac的浏览器打开HTTPS网页,如果出现访问失败的情况,则是因为Mac没有信任Charles的根证书。这时执行上面的步骤二即可。

  • 如果Mac的浏览器可以正常打开HTTPS网页,则说明Mac已经信任了Charles的根证书,这时候可能是因为移动设备没有信任Charles证书。这时执行上面的步骤四即可。



转自:https://www.jianshu.com/p/468e2905a3e1

posted @ 2019-07-08 11:20  HEJJY  阅读(1709)  评论(0编辑  收藏  举报