在服务器众多的企业里,通常运维会把某台机器开放外网访问权限,其他服务器通过该机器进行访问,该机器通常称之为跳板机。开发人员可以通过SSH工具访问服务器,进行日志查看、问题排查等等。
这里先假设一下服务器情况,跳板机地址:220.101.5.5,内网目标服务器:192.168.100.5 。SSH开放端口都假设为22,通常就是22。
工具/原料
-
XShell
方法/步骤
总共需要创建两个会话,一个是跳板机的会话,一个是目标服务器的会话。
一、跳板机会话配置
1、【必要步骤】点击新建弹出新建会话属性窗口,名称就取为跳板机,端口是22,主机填写前面假设的ip地址。如下图所示:
2、【必要步骤】点击“用户身份验证”,填写登录跳板机的SSH用户名和密码如下图所示:
3、【非必要步骤】点击“登录脚本”,勾选上执行以下等待并发送规则,点击添加弹出等待发送规则添加窗口,在发送框填写top。具体配置看图。这一步是为了防止跳板机连接过久自动断开,所以添加登录脚本直接发送top命令。不配置这一步也不影响。
4、【必要步骤】点击“隧道”。点击添加按钮进入隧道添加页面,源主机为本机localhost,侦听端口可以在有效范围内随便填写,这里为了区分连接内网哪台服务器,所以用内网服务器ip最后一位加22即522作为侦听端口。目标主机就是我们要通过跳板机访问的内网主机,端口是22。
※ 如果后续需要通过这个跳板机去访问其他服务器,则同样的操作再配置一个连接其他服务器(如:192.168.100.6)的隧道,端口不能与522冲突,按刚才的规则可以用622端口。具体配置如下图:
5、保存会话,至此已完成跳板机会话的配置。
二、目标服务器会话配置
1、【必要步骤】新建会话属性窗口。注意一下这次的配置,主机为localhost,侦听端口为刚才的522,即这个配置连接之后是访问内网的192.168.100.5服务器
2、【必要步骤】配置一下“用户身份验证”,填写内网服务器的账号和密码。
3、【非必要步骤】可以再添加一下登录脚本,直接发送进入日志服务器的命令,比如:cd /tmp/logs/xxx 这样每次一连接上就进入日志目录。
※ 如需访问其他内网服务器,则需要另外新建会话。
三、连接目标服务器
1、先打开跳板机的连接
2、再打开两台内网服务器的连接,若正常连接上就配置正确了。
特别注意:跳板机一定要先打开,因为内网服务器的连接都是基于跳板机的侦听端口。如下图所示
注意事项
-
隧道端口不能冲突
-
连接内网机之前需要打开跳板机
参考:
[1] 如何利用XShell隧道通过跳板机连接内网机器 :https://jingyan.baidu.com/article/d5a880ebd69c2613f147ccbf.html