Git配置接受特定自签名HTTPS证书
一、 问题背景
连接使用自签名证书的 HTTPS 远程仓库时,Git 默认校验失败并拒绝连接。可通过以下两种方案解决:
- 方案一(推荐):将自签名证书加入 Git 信任库,保持 SSL 校验。
- 方案二(临时):针对特定仓库 URL 关闭 SSL 校验。
二、 方案一:信任特定自签名证书(安全)
导出证书
- 浏览器访问仓库 HTTPS 地址。
- 点击地址栏锁图标 -> 证书详情 -> 导出为
.pem或.crt格式。 - 保存至本地固定路径,如
/path/to/certificate.pem。
配置 Git CA Bundle
1
2
3
4
5
6
7
8# 全局生效(推荐)
git config --global http.sslCAInfo /path/to/certificate.pem
# 仅当前仓库生效
git config http.sslCAInfo /path/to/certificate.pem
# 验证配置路径
git config --global http.sslCAInfo
三、 方案二:针对特定仓库禁用 SSL 验证(便捷)
适用于内网测试或临时调试,不推荐用于生产环境。
1 | # 针对特定远程 URL 全局禁用验证 |
四、 验证配置
1 | # 克隆仓库 |
执行无 SSL certificate problem 报错即表示配置生效。
五、 注意事项
- 自签名证书无法验证服务器真实身份,存在中间人攻击风险。
- 仓库级配置 (
git config) 优先级高于全局配置 (--global)。 - 生产环境建议申请受信任的 CA 证书,或使用企业内网 CA 统一签发。