在jenkins gerrit触发器中添加ssh密钥文件:" /...../。ssh / id_rsa"不存在

时间:2016-04-08 13:49:47

标签: linux jenkins ssh key gerrit

我在linux上安装了git,gerrit和jenkins,我在jenkins上安装了gerrit trgger插件。 现在我正在设置geerrit服务器,并尝试添加ssh密钥文件,但它正在给我 错误" /home/heidi/.ssh/id_rsa"不存在,并且SSH密钥文件或密码错误。

就像其官方网站上的图片一样:  https://wiki.jenkins-ci.org/display/JENKINS/Gerrit+Trigger ("管理设置和#34中的那个;)

但是,这个位置和文件都存在! 为什么不能找到这些密钥? 我在.shh文件和这两个键上使用了chmod命令。 但它不起作用。

3 个答案:

答案 0 :(得分:1)

这通常是

的症状
  1. 密钥实际上不存在(@nafas的答案适用于此)或
  2. jenkins用户无法读取该密钥(您的自答案暗示)
  3. 如果您已登录jenkins服务器,并导航到/var/lib/jenkins/.ssh并执行ls -lA您可能会看到的内容" root"或者其他一些用户拥有您尝试使用的id_rsa私钥。

    [RHEL7.2 /var/lib/jenkins/.ssh]# ls -lA
    -rw------- 1 root    root    1675 Jul 11 07:45 id_rsa
    -rw-r--r-- 1 root    root     398 Jul 11 07:45 id_rsa.pub
    -rw-r--r-- 1 jenkins jenkins  855 Jun 26 19:57 known_hosts
    

    以root身份登录,或使用sudo,您需要更改用户和组的所有权以反映jenkins用户和组,如下所示:chown <user>:<group> file(s)

    [RHEL7.2 /var/lib/jenkins/.ssh]# chown jenkins:jenkins id_rsa*
    [RHEL7.2 /var/lib/jenkins/.ssh]# ls -lA
    -rw------- 1 jenkins jenkins 1675 Jul 11 07:45 id_rsa
    -rw-r--r-- 1 jenkins jenkins  398 Jul 11 07:45 id_rsa.pub
    -rw-r--r-- 1 jenkins jenkins  855 Jun 26 19:57 known_hosts
    

答案 1 :(得分:0)

你可以创建一个密钥。

以运行服务器的用户身份登录本地计算机。 在命令提示符中,运行:

ssh-keygen -t rsa -C "your_email@example.com"
  

只需按即可接受默认位置和文件名。如果   .ssh目录不存在,系统会为您创建一个目录。   出现提示时,输入并重新输入密码短语。整个互动   看起来会像这样:

<强>来源:

https://confluence.atlassian.com/bitbucketserver/creating-ssh-keys-776639788.html

答案 2 :(得分:0)

我终于修好了...... 在这里发布我的解决方案,以便将来可能会遇到这个问题的人 请注意您安装的文件jenkins的用户。(在我的例子中,/ var / lib / jenkins和用户是“jenkins”)
使用“sudo su”然后“su jenkins”
然后在/ var / lib / jenkins中生成一对ssh密钥 它将不再出现“.....剂量不存在”
:)