Github - 在Windows上TLS证书验证已被禁用!

25

我正在尝试从Github克隆一个仓库,但是在TLS证书验证被禁用的情况下克隆失败,显示错误信息TLS certificate verification has been disabled!

当我运行git clone命令时,它重定向到Github的登录页面,即使输入正确的凭据,也因TLS证书和身份验证失败而失败。

我的Github账户已启用两步验证

我尝试过禁用sslverifcation,命令如下: git config --global http.sslVerify false

Github的错误消息为: enter image description here

系统规格:

操作系统:Windows 10

架构:64位

请帮我解决这个问题。提前致谢。


你使用的 Git for Windows 版本是哪个? - bk2204
我正在使用 Git-2.30.1-64 位版本。 - M.A.Murali
2
你好,我遇到了同样的问题。你解决了吗? - Fakhar Ahmad Rasul
5个回答

41

这对我很有帮助:

1. 重新启用

git config --global http.sslVerify true

解决“TLS证书验证已被禁用”的方法:

2 在GitHub上创建个人访问令牌: https://docs.github.com/zh/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token

3 在要求输入凭据时,将我的电子邮件用作用户名,并使用个人访问令牌作为密码

4 要删除错误的凭据,请参阅在Windows上存储github身份验证令牌的位置?


这解决了问题,但通常被认为是危险的,因为禁用 http.sslVerify 会暴露给中间人攻击。 - DataBach

5
你可以通过以下配置,允许 Git 访问 Windows 自己的证书存储:
git config --global http.sslBackend schannel

我不知道这是否能帮助发帖者,但我想它可能会帮助一些来到这个问题的人。
以下是我的来源:如何配置Git以信任Windows证书存储中的证书?

0

如果您想避免警告信息的出现,您需要包含证书。

https://docs.gitlab.com/charts/installation/tls.html

请检查消息中的链接:https://aka.ms/gcmcore-tlsverify

TLS验证 如果你正在使用自签名的TLS(SSL)证书,与自托管的主机提供商,如GitHub企业服务器或Azure DevOps服务器(以前是TFS),当尝试使用Git和/或GCM连接时,你可能会看到以下错误消息: $ git clone https://ghe.example.com/john.doe/myrepo 致命错误:根据验证过程,远程证书无效。建议且最安全的选择是获得由公共信任的证书颁发机构(CA)签名的TLS证书。有多个公共CA;以下是一个非详尽列表:Let's Encrypt、Comodo、Digicert、GoDaddy、GlobalSign。 如果不可能从受信任的第三方获得TLS证书,那么你应该尝试将特定的自签名证书或验证链中的任一CA证书添加到操作系统的受信任证书存储(macOS、Windows)中。 如果无法获得可信证书或信任自签名证书,则可以在Git和GCM中禁用证书验证。

@M.A.Murali,你能通过上面的答案解决问题吗?那个答案只给出了原因,没有解决方案。 - xpt

0

我遇到了同样的问题,但在克隆存储库之前使用 "init" 命令解决了我的问题。

$ git init

0
您可以通过下面的命令为单个git命令禁用TLS/SSL验证:

git -c http.sslVerify=false clone "您的git路径"

通过上述命令克隆您的项目,它将正常工作。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接