Windows11 SSH认证正常但git clone报publickey权限拒绝如何解决
问题根因
系统原生OpenSSH验证正常,但Git默认使用自带的SSH客户端,二者密钥读取路径、配置不互通,导致鉴权失败。
解决步骤
- 确认当前Git使用的SSH客户端
执行命令:
git config --global core.sshCommand
如果返回为空或者输出路径不是系统原生OpenSSH路径,继续下一步。
- 手动指定Git使用系统原生OpenSSH
Windows 11 内置OpenSSH默认路径为C:\Windows\System32\OpenSSH\ssh.exe,执行以下命令绑定:
git config --global core.sshCommand "C:/Windows/System32/OpenSSH/ssh.exe"
- 验证配置生效
重新执行git clone命令验证问题是否解决:
git clone git@gitee.com:username/demo-repo.git
可选排查项
如果绑定后仍有问题,执行以下命令输出Git克隆的详细鉴权日志,定位具体异常点:
$env:GIT_SSH_COMMAND="ssh -v" git clone git@gitee.com:username/demo-repo.git
查看日志中读取的私钥路径是否和你实际存放密钥的C:\Users\你的用户名\.ssh\id_rsa一致,确认是否有其他SSH配置冲突。
内容的提问来源于stack exchange,提问作者vorbote
相关产品推荐
相关产品推荐

