2014年3月29日星期六

Linux_021:SSH 端口转发

环境:OS X EI Capitan 10.11.4 + RHEL 6.4

在客户现场做测试时,经常需要先经过一个跳板机才能连接到测试主机。为了能够访问测试主机的控制台,需要使用 SSH 的端口转发。

1. 参数说明
(1)-f:后台认证用户/密码,通常和-N连用,不用登录到远程主机。
(2)-N:不执行脚本或命令,通常与-f连用。
(3)-L:本地端口:目标IP:目标端口

这里以JBoss A-MQ 为例,假设在 10.2.1.15 和 10.2.1.16 上分别启动了 AMQ Server,控制台端口都为 8161。
(1)在跳板机上执行如下命令
ssh -fN -L 8115:10.2.1.15:8161 root@10.2.1.15
说明:访问跳板机 8115 端口时,转发到 10.2.1.15:8161端口上。
root@10.2.1.15 是 ssh 要登录的机器,这里使用的主机和前一个参数中的主机必须是在同一个网域当中,并且能相互访问,当然也可以是同一个机器。
ssh -fN -L 8116:10.2.1.16:8161 root@10.2.1.16
(2)在 MAC 机上执行如下命令
ssh -fN -L 18115:127.0.0.1:8115 yujian@168.7.62.17
说明:访问 MAC 机 18115 端口时,转发到 10.2.1.15:8161端口上。
yujian@168.7.62.17 是跳板机,是 ssh 要登录的机器,这里使用的主机和前一个参数中的主机必须是在同一个网域当中,并且能相互访问,当然也可以是同一个机器。
这里 127.0.0.1:8115 指的是登录 yujian@168.7.62.17 后的本机,即 168.7.62.17。
ssh -fN -L 18116:127.0.0.1:8116 yujian@168.7.62.17
(3)在 MAC 机上访问
http://localhost:18115
http://localhost:18116

参考文献:
1. http://www.cnblogs.com/david-zhang-index/archive/2012/08/18/2645943.html
2. http://blog.csdn.net/a351945755/article/details/21785647

没有评论: