Java开发人员也要会的XShell隧道连接操作

linux系统在服务器领域占据了大片江山,服务器相关的各种软件也一应俱全。在这样的大环境下,要求开发人员(不限于Java开发人员)会linux操作也成了必然。就算有强大的运维团队,作为开发人员最基本的上服务器查日志,定位问题总是要会的。

在服务器众多的企业里,通常运维会把某台机器开放外网访问权限,其他服务器通过该机器进行访问,该机器通常称之为跳板机。开发人员可以通过SSH工具访问服务器,进行日志查看、问题排查等等。

通过跳板机访问服务器的情况下,如果每次都先打开跳板机再通过SSH连接到内网服务器,这样操作也太麻烦了。今天介绍一下如何用XShell隧道技术连接跳板机并配置多个内网服务器连接。这里先假设一下服务器情况,跳板机地址:220.101.5.5,内网服务器两台:192.168.100.5 192.168.100.6。SSH开放端口都假设为22,通常就是22。

首先建立跳板机的连接,并配置隧道。打开XShell点击文件菜单再点击新建弹出新建会话属性窗口,名称就取为跳板机,端口是22,主机填写前面假设的ip地址。如下图所示:

点击用户身份验证,填写SSH用户名和密码如下图所示:

为防止跳板机连接过久自动断开,所以这里添加登录脚本直接发送top命令。点击登录脚本,勾选上执行以下等待并发送规则,点击添加弹出等待发送规则添加窗口,在发送框填写top。具体配置看图:

插话:这个功能也可以用来发送SSH命令连接内网服务器,那是不是再添加一条发送密码的命令就可以不使用隧道就能直接连接内网了呢?这个问题我已经试过了,行不通的。要想通过这种方式登录内网服务器需要另外编写expect脚本,具体操作方法这里不作说明。

接下来继续配置连接内网服务器的隧道,点击隧道再点击添加按钮进入隧道添加页面,源主机为本机localhost,侦听端口可以在有效范围内随便填写,这里为了区分连接内网哪台服务器,所以用内网服务器ip最后一位加22即522作为侦听端口。目标主机就是我们要通过跳板机访问的内网主机,端口是22。同样的操作再配置一个连接192.168.100.6的隧道,端口不能与522冲突,按刚才的规则可以用622端口。具体配置如下图:

到此跳板机的配置已经完成了,下面来建立通过跳板机登录内网服务器的连接会话,首先还是进入新建会话属性窗口,注意一下这次的配置,主机为localhost,侦听端口为刚才的522,即这个配置连接之后是访问内网的192.168.100.5服务器,再配置一下用户身份验证,填写内网服务器的账号和密码,可以再添加一下登录脚本,直接发送进入日志服务器的命令,比如:cd /tmp/logs/xxx这样每次一连接上就进入日志目录。这样一台内网服务器的连接配置就完成了,同样的操作再配置192.168.100.6的连接,端口为622。具体如下图:

到此跳板机、隧道及内网的两台服务器连接都配置完成了。下面就该测试连接了,先打开跳板机的连接,再打开两台内网服务器的连接,若正常连接上就配置正确了。特别注意:跳板机一定要先打开,因为内网服务器的连接都是基于跳板机的侦听端口。如下图所示

另外,XShell的快捷命令集也是很方便的,可以编辑好常用命令,按指定快捷键快速输入这些命令。在查看中勾选快速命令,将显示在底部,在工具中找到快速命令集可以添加编辑快速命令。具体操作这里不再详细说明,看下图:

You may also like...

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据