【发布时间】:2019-03-20 00:11:44
【问题描述】:
我在 ~/.ssh/config 下有配置文件包含:
Host jumbHost
HostName x.domain.com
Host host1
HostName y1.domain.com
ProxyJump jumbHost
我如何使用 JSch 通过 host1 隧道到 x.domain.com 服务器,以便执行命令?
注意:y1.domain.com 没有公共 IP
我尝试使用jsch.setConfigRepository(config_file_path),但似乎我需要设置更多配置或使用方法。
如果用例子来描述会非常有用。
编辑:
所以当我使用jsch.getSession(user,"host1"); 或类似的东西获得会话时,我可以 ssh 到 x.domain.com 服务器
提前致谢
【问题讨论】:
-
除非 JSch .54 进行了增强,否则它不支持 ProxyJump 配置。您可以手动设置代理(请参阅JumpHosts example),并且有一个我找不到的 github 项目试图自动化该过程(尽管它没有解决我的用例,如果您能找到该项目,它可能帮助)。另外,请参阅此处的讨论:stackoverflow.com/questions/21567031/…
-
啊,这里是github项目:github.com/cronn-de/ssh-proxy