Charles安装SSL证书实现HTTPS抓包详细教程
海外云服务器 40个地区可选 亚太云服务器 香港 日本 韩国
云虚拟主机 个人和企业网站的理想选择 俄罗斯电商外贸虚拟主机 赠送SSL证书
当然可以,以下是我根据你提供的原始内容,进行错别字修正、语句优化、逻辑补充与语言润色后的原创性增强版本,整体结构更加清晰流畅,技术表达更准确,同时增强了可读性和专业度,确保内容既实用又具有原创价值。
在现代网络开发与测试工作中,抓包工具已成为开发者不可或缺的技术利器。Charles Proxy(简称 Charles)作为一款功能强大且用户友好的 HTTP/HTTPS 代理调试工具,广泛应用于接口调试、性能分析、前后端联调以及移动端应用监控等多个场景。
随着互联网安全标准的不断提升,绝大多数网站和服务均已启用 HTTPS 加密传输协议,这虽然保障了通信的安全性,却也给网络调试带来了挑战——若未正确配置,Charles 将无法解析加密后的数据流。要想顺利捕获并解密 HTTPS 流量,必须正确安装并信任 Charles 的自签名 SSL 根证书。
本文将系统性地介绍如何在 Windows、macOS、iOS 和 Android 平台上安装 Charles 的 SSL 证书,并提供常见问题的解决方案与最佳实践建议,帮助你高效完成 HTTPS 抓包配置。
什么是 Charles?为什么需要 SSL 证书?
Charles 是一款运行于本地的 HTTP 代理服务器软件,它通过设置系统或设备的网络代理,拦截客户端与目标服务器之间的所有网络请求与响应,对于普通的 HTTP 请求,Charles 可直接查看明文内容;但对于采用 TLS/SSL 加密的 HTTPS 请求,默认情况下只能看到加密的数据流,无法获取真实载荷。
为突破这一限制,Charles 使用“中间人攻击”(Man-in-the-Middle, MITM)机制来解密 HTTPS 通信,具体而言,Charles 会:
- 以自己的身份与目标服务器建立安全连接;
- 同时生成一个伪造但合法签发的证书,与客户端建立另一个加密通道;
- 在两端之间转发并解密流量,最终将原始请求和响应呈现给用户。
要使这套机制正常工作,关键在于:客户端必须信任 Charles 自建的根证书,否则,操作系统或浏览器会因证书不可信而中断连接或显示安全警告。
安装并信任 Charles 的根证书,是开启 HTTPS 抓包功能的前提条件。
准备工作:确保环境就绪
在开始安装证书前,请先确认以下几项准备工作已完成:
-
✅ 已安装最新版 Charles
- 访问官网 https://www.charlesproxy.com 下载适用于你操作系统的版本并完成安装。
-
✅ 已启动代理监听服务
- 启动 Charles 后,默认监听本机
8888端口(可在菜单栏 Proxy → Proxy Settings 中查看或修改)。
- 启动 Charles 后,默认监听本机
-
✅ 设备处于同一局域网内(适用于移动抓包)
若需对手机 App 进行抓包,需确保移动设备与运行 Charles 的电脑连接在同一 Wi-Fi 网络下。
-
✅ 关闭防火墙或杀毒软件干扰
某些安全软件可能阻止 Charles 创建 SSL 连接或监听端口,建议临时禁用或添加 Charles 到白名单中。
-
✅ 允许未知来源证书安装(特别是移动设备)
iOS 需开启“完全信任”权限,Android 可能需要关闭锁屏密码或使用特殊模块绕过系统限制。
Windows 系统:安装 Charles SSL 证书步骤详解
导出根证书
打开 Charles 软件,依次点击菜单栏中的:
Help → SSL Proxying → Install Charles Root Certificate
此时系统会自动启动 Windows 证书导入向导。
选择正确的证书存储位置
在弹出窗口中:
- 选择“本地计算机”作为存储范围;
- 点击“下一步”,选择“将所有的证书都放入下列存储”;
- 点击“浏览”,选择“受信任的根证书颁发机构”。
📌 重要提示:
务必安装到“受信任的根证书颁发机构”存储区,如果误装至“个人”或其他区域,系统仍不会信任该证书,导致 HTTPS 解密失败。
完成安装并验证
点击“完成”后,系统提示“证书已成功导入”,你可以通过以下路径验证是否安装成功:
控制面板 → Internet 选项 → 内容 → 证书 → 受信任的根证书颁发机构
在列表中查找名为 "Charles Proxy CA" 的证书,确认其存在且状态正常。
启用 SSL 代理功能
回到 Charles 主界面,进入:
Proxy → SSL Proxying Settings
勾选 Enable SSL Proxying,然后在 Include List 中添加需要监听的域名规则,
*.example.com—— 监听特定二级域*:443—— 监听所有 HTTPS 流量(推荐用于全面调试)
保存设置后,即可开始捕获 HTTPS 请求。
macOS 系统:钥匙串管理与信任配置
macOS 对证书的信任机制更为严格,需手动调整证书策略才能生效。
启动证书安装流程
同样在 Charles 中选择:
Help → SSL Proxying → Install Charles Root Certificate
此操作会自动打开系统自带的“钥匙串访问”(Keychain Access)应用,并将证书存入“系统”钥匙串。
设置“始终信任”
- 在“钥匙串访问”中搜索 “Charles Proxy CA”;
- 双击打开证书详情,在“信任”部分找到 “当使用此证书时”;
- 将其设置为 “始终信任”;
- 系统会提示输入管理员密码以确认更改。
⚠️ 注意:仅“添加到系统钥匙串”并不足够,必须显式设置“始终信任”,否则 Safari 或其他应用仍会报证书错误。
重启 Charles 并测试
重新启动 Charles,尝试在浏览器中访问一个 HTTPS 网站(如 https://httpbin.org),若能在 Charles 的 Structure 或 Sequence 视图中看到完整的请求头、响应体及状态码,则说明证书配置成功。
iOS 设备:移动端证书安装全流程
要在 iPhone 或 iPad 上抓取 App 的 HTTPS 请求,必须在设备上安装并信任 Charles 证书。
配置 Wi-Fi 代理
- 确保 iOS 设备与电脑在同一局域网;
- 打开「设置」→「Wi-Fi」,点击当前网络旁的 “i” 图标;
- 在「HTTP 代理」中选择“手动”;
- 输入电脑的局域网 IP 地址(如
168.1.100)和端口号(默认8888)。
下载并安装证书
- 使用 Safari 浏览器访问:http://chls.pro/ssl
这是 Charles 官方提供的专用证书下载地址。
- 页面会提示下载描述文件(.mobileconfig),点击“允许”并按照引导完成安装。
启用完全信任权限
由于 iOS 的安全机制,默认不信任用户安装的 CA 证书,必须手动开启信任:
「设置」→「通用」→「关于本机」→「证书信任设置」
找到 Charles Proxy CA,将其开关置为“启用”或“完全信任”。
✅ 完成以上三步后,即可在 Charles 中看到来自 iOS 设备的所有 HTTPS 请求。
Android 设备:适配高版本系统的安装策略
相较于 iOS,Android 的证书安装方式略有差异,尤其从 Android 7.0(Nougat)起,系统不再默认信任用户安装的 CA 证书用于系统级应用,这对抓包造成一定限制。
配置代理设置
- 连接与电脑相同的 Wi-Fi;
- 长按网络名称,选择“修改网络”或“高级选项”;
- 将代理模式设为“手动”;
- 填写电脑 IP 地址和端口(如
168.1.100:8888)。
下载证书文件
使用手机浏览器访问 http://chls.pro/ssl,下载 .pem 格式的证书文件,部分浏览器可能自动命名为 charles-proxy-ssl-proxying-certificate.pem。
安装 CA 证书
进入系统设置:
「设置」→「安全」→「加密与凭据」→「安装证书」→「CA证书」
根据提示选择已下载的证书文件进行安装,某些机型要求:
- 必


