Mac系统Charles Proxy SSL证书无法下载安装 未知请求无法读取
macOS端Charles根证书安装失败、SSL代理不生效修复方案
问题表现
- Charles抓包列表出现无法查看明文的
<unknown>请求,开启SSL代理功能后这类请求直接加载失败 - 两种常规根证书安装路径全部异常:
- 点击菜单栏
Charles > SSL Proxying > Install Charles Root Certificate触发安装 - 访问
chls.pro/ssl下载证书
两种操作都只会自动打开钥匙串访问,没有任何安装引导弹窗,在钥匙串证书列表里也搜不到Charles根证书
- 点击菜单栏
- 相关界面截图:


问题原因
这个问题基本都出现在macOS 13 Ventura及以上版本,是系统安全权限拦截导致的:Charles自动往系统钥匙串写证书的动作被系统拦截,只会唤起钥匙串App,不会实际执行证书写入、导入引导的流程——等于证书根本没进到系统里,自然没法配置信任,SSL代理拿不到合法根证书做中间人解密,就会出<unknown>请求、HTTPS握手失败、请求加载不出来的问题。
修复步骤
按下面的流程手动导证书即可:
- 手动导出Charles根证书到本地
打开Charles,点顶部菜单栏Help > SSL Proxying > Save Charles Root Certificate...,保存路径选桌面这种好找的地方,证书格式保持默认的.cer就可以,点保存拿到本地证书文件。 - 手动把证书导入系统钥匙串
打开钥匙串访问(启动台-其他文件夹里就能找到),选中左侧边栏的「系统」钥匙串,再点上方的「证书」分类,把刚才存到桌面的Charles根证书文件直接拖到右侧证书列表里。弹权限验证的时候输入开机密码,确认导入。 - 给证书开始终信任权限
导完之后在证书列表里找名字带Charles Proxy CA的条目,双击打开详情页,点开「信任」折叠栏,把最上面「使用此证书时」的下拉选项改成始终信任,关详情页的时候会再弹一次密码验证,输完密码保存修改。 - 验证效果
完全退出Charles再重开,进Proxy > SSL Proxying Settings确认已经加了抓包规则(测试的时候可以直接加*:*匹配所有HTTPS请求),这时候再发请求就能正常看HTTPS明文,不会再出<unknown>或者请求加载失败的问题。
踩坑提示:如果你用的是macOS 14 Sonoma及以上版本,拖证书的时候提示没权限写系统钥匙串,先右键点左侧边栏的「系统」钥匙串,选「更改钥匙串“系统”的设置」,给当前登录账号开读写权限之后再导证书就行。
内容的提问来源于stack exchange,提问作者Jenya Kats
相关产品推荐
相关产品推荐

