一段时间没调试安卓,忽然就忘了安卓怎么安装证书的了
特此记录、以备后用
首先下载 charles,直接官站下载最新版即可:https://www.charlesproxy.com/
抓包 https,就需要在当前设备安装charles 的 ssl 证书
Mac 安装证书:
电脑端根证书安装,Help->SSL Proxying->Install Charles Root Certificate:
- 点击上述选项,进入钥匙串访问信任证书设置——选择“始终信任”:
Mac端Charles配置
1. 若是需要抓取Mac浏览器的数据,勾选macOS Proxy。勾选后在浏览器设置中更改为系统代理,即可抓取浏览器数据。
2. 配置HTTP代理:点选Proxy -> ProxySetting,修改Port为8888(勾选了SOCKS Proxy,可以截获到浏览器的http访问请求)
3. 配置SSL代理:点选Proxy -> SSL Proxying Settings。点add添加需要监视的域名,支持 *号通配符,端口一般都是443:
注意转包 https,需要配置此项,不然即使安装证书,
手机端设置 WLAN 代理
- 点选Charles的 Help->Local IP Address(或者 打开网络偏好设置),查看电脑端的IP地址。
或者
在手机端,选中网络,配置代理,设为手动,IP 配置未上面的 IP,及端口
这样就可以抓包了,需要抓包 https 链接,还需要安装 ssl 证书
iPhone 安装证书:
手机端抓包
点击后,按下图提示操作
使用 iPhone 手机 Safari 访问 http://chls.pro/ssl ,提示下载证书
设置 -> 已下载描述文件
安装证书后,设置 -> 通用 -> 关于本机 -> 最底部 证书信任设置 -> 开启信任
这样就可以抓包 https 的包了,如遇到下面的问题,请参考上文配置SSL代理:点选Proxy -> SSL Proxying Settings。
Android 安装证书:
- 选择 “Install Charles Root Certificate on a mobile device” 安装
点选Help->SSL Proxying->Save Charles Root Certificate,下载手机端证书到电脑(OPPO手机只支持后缀为.cer的证书)也可以选择 Save Charles Root Certificate
目前默认下载都是 pem 格式,手动选择 cer 格式
- 有些设备使用的是 crt 格式,目前最新版的 charles 没有这种格式了。
- 还有些Android 机器是要求有 root 权限才可以安装证书的,这个这里未碰到,未做总结
- 需要将下载的证书传送到手机端,记住存储位置或后续使用搜索
- 点击 设置 -> WLAN -> 高级设置 -> 从存储设备安装,找到证书(按位置或搜索)点击应该就可以安装了
按提示给证书取个名字,提示安装成功。
或者是右键打开证书 -> 凭证用途选择 VPN 和应用 -> 点击保存,提示安装成功。
如果上述位置找不到,请在设置中 查找安全->凭据存储 等类似的路径
安卓凭证列表,就在安全-> 更多安全设置 -> 加密与凭据 -> 用户凭据 类似的路径看到
若是 iPhone,需要安全中心设置证书信任。
- 手机用USB连接电脑,就可以看到电脑端 Charles 弹出 请求连接的确认菜单,点击 “Allow” 即可完成设置。
联机调试
- iOS 系统直接数据线连机器 Safari可以调试(需要开启开发者调试功能)
- 安卓系统直接数据线连机器 chrome,使用 chrome://inspect/#devices 也可以调试(同样打开开发者模式)