通过 SSH 发布无效的私钥

Sve*_*rov 3 ssh jenkins

我在 Jenkins 中使用Publish over SSH连接到远程服务器。我已经有一个私钥(以 OpenSSH 格式开头),可以在jenkins 用户-----BEGIN OPENSSH PRIVATE KEY-----下的 shell 中完美运行,但是当我从 Web 界面使用它时,它会抛出异常 jenkins.plugins.publish_over.BapPublisherException: Failed to add SSH key. Message [invalid privatekey: [B@4bba7224]

同时,我在 Jenkins 机器(Docker 中的 Debian GNU/Linux 9)上生成了另一个密钥并复制id_rsa.pub到远程机器。该密钥是不同的,并且以-----BEGIN RSA PRIVATE KEY-----和 开头,对于该密钥错误是,Message [Auth fail]因此它理解该密钥。

小智 6

我刚刚遇到了同样的问题。该插件对较新的 OpenSSH 格式感到困惑(我还有一个以 开头的私钥-----BEGIN OPENSSH PRIVATE KEY-----)。

我保存了密钥并将其加载到 PuTTyGen 中,然后“转换”->“导出 OpenSSH 密钥”(请注意,有一个我们不想要的“导出 OpenSSH 密钥(强制新文件格式)”。这显然是在 Windows 上;我不是确定其他操作系统上的等效项。

我新导出的密钥以 开始-----BEGIN RSA PRIVATE KEY-----,此后插件接受了它。