首页 > 解决方案 > 使用 SSH 跳转主机配置 Jenkins

问题描述

当我有一个具有自己的用户和密钥的中间堡垒时,如何在 jenkins 中配置 SSH 连接,如下所示:

Host jump
  User user1
  HostName jumpdns
  IdentityFile /Users/myname/.ssh/jumpkey.pem

Host server
  User user2
  HostName serverdns
  IdentityFile /Users/myname/.ssh/serverkey.pem
  ForwardAgent yes
  ProxyJump jump

这适用于 cli 作为ssh server. 但是我不知道如何将它编码到我的 jenkins 中,该 jenkins 从我的用户内部而不是作为单独的 jenkins 用户在我的笔记本电脑上本地运行。JENKINS_HOME=/Users/myname/.jenkins

我查看了Publish over SSH插件,它确实提供了 jumpdns 选项,但没有提供 jump自己的用户和密钥。似乎其他人一直在寻找它而没有解决方案。

为我的 SSH 设置配置 Jenkins 的最佳方法是什么?

标签: jenkinssshproxyjenkins-plugins

解决方案


假设您使用的是 jenkins 版本:2.303.2。这是目前最新的版本。

如果你的主服务器有一个支持跳转主机选项的 SSH 版本(例如 OpenSSH_7.4p1),那么你可以试试这个:

- 选择启动方法作为“通过在控制器上执行命令执行启动代理”

-启动命令:ssh -tt -J user@jump_host_name user@destination_host

https://www.tecmint.com/access-linux-server-using-a-jump-host/


推荐阅读