如何解决http.sslVerify = false不会在git config中禁用SSL验证
问题:
我一直在尝试通过企业GitHub服务器上的http代理(在git global config中设置)从Ubuntu AWS实例克隆git存储库。
从代理进行克隆有效,但是从实例(通过代理)进行克隆却出现以下错误:
致命:无法访问“ https://githubserver.company.com/repository.git/”:服务器证书验证失败。 CAfile:/etc/ssl/certs/ca-certificates.crt CRLfile:无
我已经尝试下载服务器证书,将其添加到我的受信任证书中,并按照指定在git配置中指定 http.sslCAInfo 或 http.sslCAPath 选项在许多其他线程中。
显然,遇到此问题的其他所有人都至少可以通过临时禁用git配置中的ssl验证来调试问题或使安全规则成为一次性例外。
但是使用git config --global http.sslVerify false
或任何变体形式(作为命令标志,环境变量,在本地,全局或系统级别等)都无效。
这发生在日期/时间不同步的人(但是AWS实例和代理中的时间都通过同一ntp服务器同步),或在Windows上的特定上下文中,但是我找不到任何其他实例在Linux机器上,这种git配置被忽略了。
我知道这会带来重大的安全隐患,但无法找到存在类似问题的人,使我认为我一定错过了某些事情。
我经历了数十个类似的话题,但找不到一个遇到相同问题的人。
我尝试过的事情:
我通过以下方式获得了证书
openssl s_client -showcerts -connect $hostname:$port -servername $hostname
将其放入
/usr/local/share/ca-certificates/
作为.pem文件
通过
将证书添加到 /etc/ssl/certs/ca-certificates.crt sudo update-ca-certificates
。
,并在git全局配置中添加了以下选项:
sslCAInfo = /etc/ssl/certs/ca-certificats.crt
sslCAPath = /etc/ssl/certs/
尝试之前:
git config --global http.sslVerify false
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。