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

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

我在 Centos VM 上安装了 Jenkins,因为我正在考虑更换 Bamboo,我按照以下安装步骤完成了所有安装并运行指示一切顺利,然后我想启动一个从属服务器,我创建了第二个虚拟机,在其上创建了一个用户,为该用户创建了一个 SSH 密钥。然后我在 Jenkins 中创建了一个从属节点,但是当我在 Jenkins 中为从属机器创建帐户并提供 SSH 私钥时,我得到了一个错误。这是正确的,因为我没有将主 SSH 公钥放在从属服务器的 ~/.ssh/authorized_keys 中。

Centos Yum 安装似乎没有为运行 Jenkins 的用户创建 ssh 密钥,我使用 Google 搜索了一下,从我读到的内容来看,我需要这个密钥才能完成我想要做的事情。我确实尝试在机器上使用 SU,但没有成功。我想知道我需要怎么做,因为我宁愿使用 SSH 密钥。

说了这么多,我已经通过使用带有密码的 SSH 选项让一个从属服务器运行,虽然它可以工作,但这不是我想要的方式。

任何帮助都将非常有帮助!

答案1

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

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

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

答案2

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

# sudo -u jenkins ssh-keygen

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

相关内容