Jenkins Gerrit 触发器 - “/var/lib/jenkins/.ssh/id_rsa”不是有效的密钥文件

Posted

技术标签:

【中文标题】Jenkins Gerrit 触发器 - “/var/lib/jenkins/.ssh/id_rsa”不是有效的密钥文件【英文标题】:Jenkins Gerrit Trigger - "/var/lib/jenkins/.ssh/id_rsa" is not a valid key file 【发布时间】:2021-01-24 08:24:04 【问题描述】:

我已经按照 Jenkins Install documentation 的文档在 Ubuntu 服务器中安装了 Jenkins,我正在尝试设置 Gerrit Trigger Plugin。在设置 Administrative Settings 部分时,SSH Keyfile 部分总是给出错误 "/var/lib/jenkins/.ssh/id_rsa" is not a valid key file。 p>

我已经以 Jenkins 用户的身份在默认位置生成了 ssh 密钥 "/var/lib/jenkins/"

我尝试使用ssh-keygenssh-keygen -t rsassh-keygen -t rsa -b 2048 生成密钥,生成的密钥带有和不带有密码短语,也显示为 pem 文件,但仍显示为无效的密钥文件。

文件位于 "/var/lib/jenkins/.ssh/" 位置

jenkins@jenkins:~/.ssh$ ls -la
total 16
drwx------  2 jenkins jenkins 4096 Oct  9 14:18 .
drwxr-xr-x 17 jenkins jenkins 4096 Oct  9 14:18 ..
-rw-------  1 jenkins jenkins 2602 Oct  9 14:05 id_rsa
-rw-r--r--  1 jenkins jenkins  569 Oct  9 14:05 id_rsa.pub

我在 jenkins 日志文件中也没有在门户网站系统日志部分中找到任何有关此的日志条目。

【问题讨论】:

您查看过文件吗?格式正确吗?您是否尝试过使用密钥通过ssh-copy-id SSH 到另一台电脑? 是的,文件内容看起来不错,我可以通过ssh -p 29418 -i /var/lib/jenkins/.ssh/id_rsa jenkins@gerrit-domain ssh 到gerrit 服务器 【参考方案1】:

尝试使用以下命令生成密钥:

ssh-keygen -m PEM

【讨论】:

以上是关于Jenkins Gerrit 触发器 - “/var/lib/jenkins/.ssh/id_rsa”不是有效的密钥文件的主要内容,如果未能解决你的问题,请参考以下文章

配置gitlab gerrit jenkins

jenkins gerrit

如何将托管在gerrit上的代码库集成到jenkins?

Jenkins 管道无法使用凭据推送到 gerrit

jenkins+gerrit

持续集成环境搭建Jenkins+Gitlab+Gerrit