通过 2 台服务器的 SSH 隧道 HTTPS 流量

通过 2 台服务器的 SSH 隧道 HTTPS 流量

我想要确定的是如何通过 1 个以上的主机传输 HTTPS 流量?通常,当我必须跳过 1 台主机时,我会执行以下操作:

# URL Access Tunnel: https://127.0.0.1:1234
ssh -L 1234:TARGET_SERVER:443 jumphost.foo.com

然后我可以连接浏览器,https://127.0.0.1:1234然后就可以开始了。但现在我有第二个跳转主机,我需要通过隧道,但我似乎无法使类似的 SSH 命令起作用。

图表:

笔记本电脑 -> Jumphost1 -> Jumphost2 -> Remote_HTTP_Server

答案1

使用-J(或ProxyJumpssh_config 关键字)先连接到jumphost1,然后连接到jumphost2

 ssh -L 1234:TARGET_SERVER:443 -J jumphost1 jumphost2

您可以N在 ssh 链中使用中间跳转主机

 ssh -L 1234:TARGET_SERVER:443 -J jumphost1,jumphost2,...,jumphostN jumphostN+1

请参阅OpenSSH 手册OpenSSH 手册页以获得ProxyJump概述。

相关内容