Win10 Linux子系统下Git访问GitHub持续提示认证失败求助
解决WSL中Git克隆GitHub私有仓库的证书验证与认证问题
先帮你拆解这两个问题,一步步来搞定:
一、处理「server certificate verification failed」错误
这个问题是WSL里的CA证书过期或缺失导致的,给你两种解决思路:
1. 临时应急方案(不推荐长期用)
如果只是临时需要克隆仓库,可以暂时关闭Git的SSL验证:
git config --global http.sslVerify false
⚠️ 注意:这种方式会跳过所有SSL证书校验,有安全风险,用完记得改回来:git config --global http.sslVerify true
2. 彻底修复CA证书(推荐)
更新WSL发行版的CA证书存储,以Ubuntu为例:
# 更新软件源 sudo apt update # 重新安装CA证书包 sudo apt install --reinstall ca-certificates # 更新证书存储 sudo update-ca-certificates
完成后再尝试克隆,证书验证应该就能正常通过了。
二、解决「Authentication Failed」认证失败问题
私有仓库需要正确的身份验证,推荐两种安全靠谱的方式:
1. HTTPS方式:用个人访问令牌(PAT)替代密码
GitHub已经不再支持密码登录,必须用PAT代替:
- 第一步:在GitHub账号的「Settings → Developer settings → Personal access tokens」里生成新PAT,勾选「repo」权限(按需添加其他权限),务必保存好生成的令牌(只显示一次)。
- 第二步:克隆时直接把PAT嵌入URL:
git clone https://<你的PAT>@github.com/PrivateRepo/my-private-repo.git
或者设置Git凭据助手,让它记住PAT,后续不用重复输入:
git config --global credential.helper store
之后第一次用HTTPS克隆时,用户名填你的GitHub账号,密码填生成的PAT,Git会自动保存凭据。
2. SSH方式(更安全,无需反复输入令牌)
用SSH密钥对做认证,步骤如下:
- 第一步:在WSL里生成SSH密钥对(一路回车用默认设置就行):
ssh-keygen -t ed25519 -C "你的GitHub绑定邮箱"
- 第二步:查看生成的公钥内容:
cat ~/.ssh/id_ed25519.pub
- 第三步:复制公钥内容,到GitHub账号的「Settings → SSH and GPG keys」里添加新的SSH密钥,粘贴进去保存。
- 第四步:测试SSH连接:
ssh -T git@github.com
如果看到「Hi <你的用户名>! You've successfully authenticated...」就说明配置成功,之后直接用SSH地址克隆:
git clone git@github.com:PrivateRepo/my-private-repo.git
内容的提问来源于stack exchange,提问作者soapergem




