mac下配置Charles,安装证书,连接iOS手机抓包

本文详细介绍了如何在Mac和iOS设备上配置Charles代理工具以实现网络数据抓取。包括安装及激活Charles、配置并信任SSL证书、iOS设备安装证书等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、前置操作

二、mac上配置并信任证书

三、iOS手机手安装证书

四、查看效果 


mac:MacBook Pro (Retina, 15-inch, Mid 2015)

手机:iPhone 12 pro max

一、前置操作

  1. 从官网下载链接 Download a Free Trial of Charles • Charles Web Debugging Proxy
  2. 附上注册码:

    Registered Name: https://zhile.io

    License Key: 48891cf209c6d32bf4

  3. 安装完成是这个界面,空空如也

    安装后,打开Charles
  4. 刚下载的Charles打开后是解析不出来数据的,都是unknown,因为没有配置证书,证书配置了就可以抓包了

二、mac上配置并信任证书

  1. 找到Charles的根目录 Help->SSL Proxying -> Install Charles Root Certificate
    选择“添加”
  2. 添加到mac的证书里,mac默认是不信任Charles证书的,需要手动信任一下
  3. 在mac中信任Charles证书,双击想要被信任的证书,在打开的窗口里,选择使用此证书时“始终信任”,就完成信任了
  4. 在mac上信任证书之后,开始配置Charles
  5. 现在可以抓http请求了,想要抓https请求,需要配置一下SSL Proxying
  6. 配置了这些之后,就可以抓取mac端的请求了,如果想抓取iOS手机端的请求,还需要在进行iOS手机端的配置

三、iOS手机手安装证书

  1. 手机和电脑连接同一个网络,Charles会弹出一个请求手机连接的弹窗,选择【allow】允许
  2. mac上找到这个地址
  3. iOS手机找到代理界面,设置 - 无线局域网 - 点击网络旁的 “!” 号 - 点击底部“配置代理” ,选择手动代理,服务器和端口号,填写上个图中的1信息
  4. iOS手机打开Safari浏览器,输入chls.pro/ssl,回车,选择允许
  5. 【安装证书】在设置-通用-描述文件中找到刚下载的证书,安装一下,安装成功是这样的
  6. 【信任证书】在设置-通用-关于本机-证书信任设置

四、查看效果 

经过以上配置后,就可以成功抓取、解析接口信息了,长这样

### 关于Charles Proxy iOS 下载证书失败的解决方案 如果在尝试通过 Charles 抓取 HTTPS 请求时遇到无法下载或安装证书的情况,可以按照以下方法排查并解决问题。 #### 方法一:更换证书下载地址 有时由于网络原因或其他因素,`chls.pro/ssl` 可能无法正常访问。此时可尝试其他官方提供的备用链接来获取证书文件[^3]: - 替代网址:https://www.charlesproxy.com/getssl - 如果上述方式仍然不可用,则可以通过电脑端手动导出 `.pem` 格式的根证书,并将其传输到 iOS 设备上进行安装[^2]。 #### 方法二:检查网络环境 确保当前使用的 Wi-Fi 连接已启用 SSL 代理功能。具体操作如下: 1. 在 Charles配置好目标 Wi-Fi 的代理设置; 2. 将 iPhone 和运行 Charles 的主机连接至同一无线局域网下; 3. 输入指定 IP 地址以及端口号(默认8888),使设备能够识别该中间人服务器的存在[^1]。 #### 方法三:更新操作系统版本 部分旧版iOS可能存在兼容性问题导致无法成功加载或者信任新颁发出来的CA机构签发过的公钥基础设施(PKI)体系下的X.509标准电子凭证实例化产物即我们常说的各种类型的数字身份证明材料之一——SSL/TLS加密通信协议所依赖的基础组件—也就是这里提到的“查尔斯”的自定义根级认证实体对象[^4] 。因此建议升级至最新稳定发行版本以获得更好的支持效果。 #### 方法四:重启相关服务与硬件设施 当以上措施均未奏效时 ,不妨考虑执行简单的重置动作比如重新启动计算机程序本身连同关联的服务进程还有物理层面涉及到的所有参与方包括但不限于个人手持移动通讯工具及其附属配件等等一切可能影响最终呈现结果的因素组合在一起共同作用所产生的综合效应可能会带来意想不到的好转局面哦! ```bash sudo launchctl unload /Library/LaunchDaemons/com.xk72.charles.agent.plist sudo launchctl load /Library/LaunchDaemons/com.xk72.charles.agent.plist ``` 此命令用于Mac OS X平台上强制停止再重新激活后台正在运转着的那个名为charles agent daemon守护线程从而达到刷新整个工作流程的目的以便尽快恢复正常运作状态。 --- ###
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值