一段时间没调试安卓,忽然就忘了安卓怎么安装证书的了

特此记录、以备后用

首先下载 charles,直接官站下载最新版即可:https://www.charlesproxy.com/

抓包 https,就需要在当前设备安装charles 的 ssl 证书

Mac 安装证书:

电脑端根证书安装,Help->SSL Proxying->Install Charles Root Certificate:
image.png

  1. 点击上述选项,进入钥匙串访问信任证书设置——选择“始终信任”:
    image.png
    image.png

Mac端Charles配置
1. 若是需要抓取Mac浏览器的数据,勾选macOS Proxy。勾选后在浏览器设置中更改为系统代理,即可抓取浏览器数据。
image.png
2. 配置HTTP代理:点选Proxy -> ProxySetting,修改Port为8888(勾选了SOCKS Proxy,可以截获到浏览器的http访问请求)
image.png

3. 配置SSL代理:点选Proxy -> SSL Proxying Settings。点add添加需要监视的域名,支持 *号通配符,端口一般都是443:

注意转包 https,需要配置此项,不然即使安装证书,
image.png

手机端设置 WLAN 代理

  1. 点选Charles的 Help->Local IP Address(或者 打开网络偏好设置),查看电脑端的IP地址。
    image.png
    或者
    image.png

在手机端,选中网络,配置代理,设为手动,IP 配置未上面的 IP,及端口

image.png
这样就可以抓包了,需要抓包 https 链接,还需要安装 ssl 证书

首次抓包,需要同意允许抓包

iPhone 安装证书:

手机端抓包
image.png
点击后,按下图提示操作
image.png
使用 iPhone 手机 Safari 访问 http://chls.pro/ssl ,提示下载证书

image.pngimage.png
设置 -> 已下载描述文件
image.pngimage.png
安装证书后,设置 -> 通用 -> 关于本机 -> 最底部 证书信任设置 -> 开启信任

image.png
这样就可以抓包 https 的包了,如遇到下面的问题,请参考上文配置SSL代理:点选Proxy -> SSL Proxying Settings。
image.png
image.png

Android 安装证书:

  1. 选择 “Install Charles Root Certificate on a mobile device” 安装

点选Help->SSL Proxying->Save Charles Root Certificate,下载手机端证书到电脑(OPPO手机只支持后缀为.cer的证书)也可以选择 Save Charles Root Certificate
image.png
目前默认下载都是 pem 格式,手动选择 cer 格式

  • 有些设备使用的是 crt 格式,目前最新版的 charles 没有这种格式了。
  • 还有些Android 机器是要求有 root 权限才可以安装证书的,这个这里未碰到,未做总结

image.png

  1. 需要将下载的证书传送到手机端,记住存储位置或后续使用搜索
  2. 点击 设置 -> WLAN -> 高级设置 -> 从存储设备安装,找到证书(按位置或搜索)点击应该就可以安装了
    按提示给证书取个名字,提示安装成功。
    或者是右键打开证书 -> 凭证用途选择 VPN 和应用 -> 点击保存,提示安装成功。
    如果上述位置找不到,请在设置中 查找安全->凭据存储 等类似的路径

安卓凭证列表,就在安全-> 更多安全设置 -> 加密与凭据 -> 用户凭据 类似的路径看到

若是 iPhone,需要安全中心设置证书信任。

image.png

  1. 手机用USB连接电脑,就可以看到电脑端 Charles 弹出 请求连接的确认菜单,点击 “Allow” 即可完成设置。

联机调试

  • iOS 系统直接数据线连机器 Safari可以调试(需要开启开发者调试功能)
  • 安卓系统直接数据线连机器 chrome,使用 chrome://inspect/#devices 也可以调试(同样打开开发者模式)