根本原因是Sublime Text内置Python缺少更新CA证书或受代理/防火墙拦截;可通过禁用SSL验证临时排查,推荐替换certifi/cacert.pem为最新证书,并在企业环境追加私有根证书。

Sublime Text 安装插件时出现 SSL 错误(如 SSL: CERTIFICATE_VERIFY_FAILED 或 Connection refused),根本原因是它默认使用系统 Python 的证书信任链,但 Windows/macOS 上的 Sublime 自带 Python 环境缺少更新的 CA 证书,或被代理/防火墙拦截了 HTTPS 请求。
为什么 Package Control 会报 SSL 错误
Package Control 依赖 urllib(Python 2.7 或 3.x)发起 HTTPS 请求,而 Sublime Text 内置的 Python 不自带完整 CA 证书包(比如没包含 Let’s Encrypt 新根证书),也不读取系统 OpenSSL 配置。常见错误信息包括:
SSL: CERTIFICATE_VERIFY_FAILEDFailed to download package list-
Connection reset by peer(尤其在企业网络或启用 HTTPS 解密代理时)
临时绕过验证(仅调试用,不推荐长期启用)
修改 Package Control 的配置,强制跳过证书校验——这能快速验证是否为证书问题,但会带来中间人攻击风险,切勿在生产环境或敏感网络中使用。
打开 Sublime Text → Preferences → Package Settings → Package Control → Settings – User,在 JSON 中添加:
{
"http_timeout": 30,
"install_prereleases": [],
"channels": [
"https://packagecontrol.io/channel_v3.json"
],
"ssl_verification": false
}
保存后重启 Sublime,再尝试 Ctrl+Shift+P → Package Control: Install Package。若成功,说明确实是证书验证导致的问题。
正确修复:替换内置证书文件(推荐)
Sublime 使用 certifi 包管理证书,路径固定。需手动替换其内置的 cacert.pem 文件为最新版本。
- 定位证书路径:
Packages/Package Control/certifi/cacert.pem(通过 Preferences → Browse Packages… 进入) - 下载最新证书:访问 https://www.php.cn/link/5fe4dadcdb001d8566cd20e6d8a20251,保存为
cacert.pem - 关闭 Sublime Text,将下载的文件覆盖原
cacert.pem - 重新启动,无需改配置,
ssl_verification保持true(默认)即可正常工作
注意:不同 Sublime 版本路径略有差异。Sublime Text 4 中证书可能位于 Packages/Package Control/certifi/cacert.pem;若该路径不存在,可尝试在 Packages/User/ 下新建 Package Control.sublime-settings 并确保 "ssl_verification": true。
企业环境或代理场景下的额外处理
如果公司使用 HTTPS 代理(如 Zscaler、Netskope),即使证书已更新仍会失败——因为代理会用自己的证书重签流量,Sublime 不信任该私有根证书。
- 导出企业根证书(通常为
.crt或.pem文件) - 用文本编辑器打开
cacert.pem,将企业证书内容追加到底部(PEM 格式,以-----BEGIN CERTIFICATE-----开头) - 保存并重启 Sublime
- 也可设置环境变量(对 Sublime 启动方式有效):
SSL_CERT_FILE=/path/to/your/cert.pem
这个步骤容易被忽略:很多用户只更新了公共 CA 证书,却没把内网代理的根证书一并加入,结果在办公网络下依然报错。










