GitClone Gitlab仓库报错:无法使用OPENSSH新格式私钥id_rsa
GitLab SSH Clone 新格式OpenSSH私钥报错解决方案
问题根因
报错是由于Git默认绑定的SSH客户端(多为PuTTY系列的Plink)不兼容--BEGIN OPENSSH PRIVATE KEY--开头的新版OpenSSH私钥格式导致,之前转换密钥失败通常是操作流程不完整导致。
解决方案,按顺序操作即可
- 方案1:切换Git使用系统自带OpenSSH客户端(操作最简单,推荐优先使用)
- 打开CMD执行命令查看当前Git SSH配置:
git config --global core.sshCommand - 如果输出为空或指向plink相关路径,执行以下命令修改为系统OpenSSH路径:
git config --global core.sshCommand "C:/Windows/System32/OpenSSH/ssh.exe"
若你的OpenSSH安装在自定义路径,替换为对应ssh.exe的实际路径即可 - 执行
ssh git@你的GitLab域名验证连接,返回GitLab欢迎提示即为配置成功,可正常执行clone操作
- 打开CMD执行命令查看当前Git SSH配置:
- 方案2:坚持使用PuTTY作为SSH客户端的正确转换流程
- 打开PuTTYgen,点击顶部菜单
Conversions→Import key,选择你本地的C:\GIT\HOME\.ssh\id_rsa原始私钥文件 - 导入成功后点击
Save private key,将转换后的ppk格式私钥保存为C:\GIT\HOME\.ssh\id_rsa.ppk - 打开PuTTY配套的Pageant密钥代理工具,点击
Add Key选择刚才生成的ppk文件,输入私钥密码(如有设置)完成加载 - 重新执行clone操作即可
- 打开PuTTYgen,点击顶部菜单
- 可选补充配置:如果上述操作后仍有问题,在
C:\GIT\HOME\.ssh\目录下新建名为config的无后缀文件,写入以下内容:Host 你的GitLab域名
User git
IdentityFile C:\GIT\HOME.ssh\id_rsa
内容的提问来源于stack exchange,提问作者Andi
相关产品推荐
相关产品推荐

