Git 连接 GitHub 报 443 错误?SSL 证书配置与排查指南
在使用 Git 操作 GitHub 时,常因 SSL 证书路径错误或系统环境差异导致 443 连接失败或报错 error setting certificate file。这通常意味着 Git 无法找到或正确使用受信任的根证书包(cacert.pem)。

遇到这类问题别慌,按以下顺序排查,通常能解决大部分情况。
清除自定义证书配置(首选方案)
很多时候,问题出在之前配置的全局证书路径失效了。最直接的方法是告诉 Git 不要使用任何自定义证书文件,而是回退到操作系统或 Git 内置的默认证书库。
打开终端(Git Bash 或命令行),执行以下命令移除全局配置:
git config --global --unset http.sslCAInfo
git config --global --unset http.sslCAPath
这两个命令会删除可能指向错误位置的设置。对于大多数现代 Windows(Git for Windows 2.14+)和 macOS 系统,这一步往往就能立刻解决问题。
如果上述操作后问题依旧,请继续尝试下一步。
手动指定正确的证书路径
在某些旧版 Git 或特殊环境下,可能需要显式指定证书文件位置。Git 通常使用 ca-bundle.crt 而非 cacert.pem。
1. 查找证书文件
在 Git Bash 中运行以下命令快速定位:
find / -name "cacert.pem" 2>/dev/null | head -1
# 或者更精确地搜索 Git 安装目录
find /mingw64 -name "cacert.pem" 2>/dev/null
常见路径参考:
- Windows:
C:\Program Files\Git\mingw64\ssl\certs\ca-bundle.crt - Git Bash:
/usr/ssl/certs/ca-bundle.crt
2. 配置路径
找到文件后,将其路径写入 Git 配置。注意 Windows 路径建议使用正斜杠或双引号包裹:
git config --global http.sslCAInfo "C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt"
确保路径完全正确,一个字符都不能错。
临时关闭 SSL 验证(慎用)
如果急需完成操作且确认网络环境安全,可以临时禁用 SSL 验证。注意:这会降低安全性,仅作为最后手段,完成后务必恢复。
# 当前仓库禁用
git config http.sslVerify false
# 【慎用】全局禁用(非常不安全!)
git config --global http.sslVerify false


