在 Jenkins Master 上创建 SSH 密钥 - Centos Yum 安装

djo*_*djo 8 build-server ssh-keys centos6 jenkins

我已经在 Centos VM 上安装了 Jenkins,因为我正在考虑更换 Bamboo,我按照安装说明安装并运行了它。一切顺利,然后我想启动一个 Slave,我创建了第二个 VM,在其上创建了一个用户,为该用户创建了一个 SSH 密钥。然后我在 Jenkins 中创建了一个 Slave 节点,但是当我在 Jenkins 中为 Slave 机器创建帐户并提供 SSH 私钥时,我得到了错误。这是正确的,因为我没有将主 SSH pub 密钥放在 ~/.ssh/authorized_keys 中的 Slave 上。

看起来 Centos Yum 安装没有为运行 Jenkins 的用户创建 ssh 密钥,我做了我的 Google fu 并且从我读到的内容中我需要它来做我想做的事情。我确实在机器上尝试过 SU 作为 ,但没有运气。我想知道我需要如何做到这一点,因为我会尽快使用 SSH 密钥。

在说所有这些时,我通过使用密码的 SSH 选项获得了一个奴隶,它可以工作,但这不是我想要的方式。

任何帮助都会很棒!

小智 30

实现相同目的的更合适的方法是运行:

# sudo -u jenkins ssh-keygen
Run Code Online (Sandbox Code Playgroud)

这将在此处为您生成密钥:
/var/lib/jenkins/.ssh/id_rsa.pub

  • 这应该是公认的答案 (2认同)

小智 4

我刚刚遇到了同样的问题。我所做的是:

  1. 在master上更改为root用户:su root
  2. 执行:passwd jenkins
  3. 为jenkins用户指定密码
  4. 更改为 jenkins 用户(并提供步骤 3 中的密码):su jenkins
  5. 跑步ssh-keygen

这为我解决了问题。我无法做到sudo passwd jenkins,我必须更改为root用户。您可能还想将远程服务器添加到know_hosts 文件中。