背景:
我需要访问到某台远程机器上的8088端口的界面。
但是,这台机器不能从本机直接访问,需要跳几次。详细步骤如下:
可以使用proxyCap工具,但是那玩意收费。
我们可以使用openssh的ProxyCommand命令
在 ~/.ssh/config
中配置如下,若没有config文件,新建一个就可以。
Host t1
Hostname 1.2.3.4
Port 22(也不一定非是22,开通哪个登陆端口就是哪个)
User root(自己登陆的账户,不一定是root)
Host t2
Hostname 5.6.7.8
Port 22(也不一定非是22,开通哪个登陆端口就是哪个)
User root(自己登陆的账户,不一定是root)
ProxyCommand ssh -q -x -W %h:%p t1
Host t3
Hostname 9.10.11.12
Port 22(也不一定非是22,开通哪个登陆端口就是哪个)
User root(自己登陆的账户,不一定是root)
ProxyCommand ssh -q -x -W %h:%p t2
Host mubiao
Hostname 13.14.15.16
Port 22(也不一定非是22,开通哪个登陆端口就是哪个)
User root(自己登陆的账户,不一定是root)
ProxyCommand ssh -q -x -W %h:%p t3
配置完成之后,如何可以访问到 目标机器的 8088端口界面呢。
执行下面的命令:
ssh -L 5000:13.14.15.16:8088 root@mubiao
此命令就是将目标机器的8088端口转发到本地的5000端口上。
效果如下图:
此刻就可以实现我们的效果啦。