Windows:终端无法使用 PuTTY SSH 密钥

Windows:终端无法使用 PuTTY SSH 密钥

我在尝试通过终端使用 SSH 时遇到问题。我知道在 Windows 中,您必须使用 PuTTY 来简化这种连接,并且使用它连接具有我的key.ppk文件的公钥版本的远程服务器时,它可以正常工作。

问题是,当使用 PowerShell/Git Bash 时,我无法通过 SSH 下载任何内容。它会永远加载到此屏幕:

无限加载屏幕的演示

我已经key.ppk加载了 Pageant Key 列表:

选美关键清单

现在,这还不是问题,因为我主要通过 PuTTY 会话以及 Git 客户端(我使用 GitKraken)来处理我的 SSH 连接,据我所知,它使用了 Plink。

但是现在,在一个工作项目中,我需要将我的 SSH 私钥提供到一个目录中,以便 Docker 构建可以获取它并访问公司存储库(我的公钥已加载到我的 BitBucket 帐户中)。当然,这是行不通的。

我有两个问题:

  • 如何使我的 SSH 密钥可以在终端中使用
  • 另外,我想知道如何获取我的密钥的 OpenSSH 版本,以便将其作为id_rsa无扩展名文件存储在上述存储库目录中,以供 Docker 构建使用

我知道使用PuTTY你可以做到后者(菜单转换 > 导出 OpenSSH 密钥),但我还是不知道如果不使用扩展名保存它是否就足够了。

顺便说一句:我搜索了很多,有很多关于此的问题,但都没有任何帮助。

提前致谢。

答案1

无扩展名的 id_rsa 文件应该足够了。您可以尝试以下方法:

  • 如果 git bash 具有该file实用程序,您可以在 ssh 密钥 ( file id_rsa) 上运行它以验证它是否是正确的文件类型。
  • 将密钥移动到 Windows 用户目录中名为“.ssh”的文件夹。我不记得 git bash 是否有自己单独的用户目录。如果有,你应该使用那个。

如果这些都不起作用,您可能需要尝试 OpenSSH 自己的ssh-agent

# start the ssh-agent in the background
$ eval $(ssh-agent -s)
> Agent pid 59566
$ ssh-add ~/.ssh/id_rsa # (or whatever path you have the ssh key in)

来源

相关内容