使用XShell通过Linux跳板机连接内网服务器
说明
最近在维护一个项目,一共有两台Linux服务器,内网相连,用途不同。仅服务器A有外网地址,要求通过服务器A维护服务器B的项目。
服务器A外网地址:220.178.21.57,内网地址:192.168.1.30。服务器B内网地址:192.168.1.31。端口号均为22。
方法一
直接使用命令通过服务器A进入服务器B并进行文件互传。
- 使用Xshell 外网登录服务器A,然后使用如下指令,出现密码输入提示,输入密码后即可进入服务器B
ssh root@192.168.1.31
root@192.168.1.31’s password:
- 将项目打包上传至服务器A的根目录,然后在服务器A中通过如下指令即可将项目复制到服务器B中的指定目录下面。
通过如下命令也可以将服务器B中的文件复制到服务器A,然后下载到本机。
其中,/project.jar 是当前主机需要复制的文件的绝对路径,root@192.168.1.31 是目标主机用户及目标主机IP,/home/myProject 是目标主机指定的目录。
scp /project.jar root@192.168.1.31:/home/myProject
方法二
https://jingyan.baidu.com/article/d5a880ebd69c2613f147ccbf.html
在服务器众多的企业里,通常运维会把某台机器开放外网访问权限,其他服务器通过该机器进行访问,该机器通常称之为跳板机。开发人员可以通过SSH工具访问服务器,进行日志查看、问题排查等等。
这里先假设一下服务器情况,跳板机地址:220.101.5.5,内网服务器两台:192.168.100.5 192.168.100.6。SSH开放端口都假设为22,通常就是22。
一、
首先建立跳板机的连接,并配置隧道。打开XShell点击文件菜单再点击新建弹出新建会话属性窗口,名称就取为跳板机,端口是22,主机填写前面假设的ip地址。如下图所示:
二、
点击用户身份验证,填写登录跳板机的SSH用户名和密码如下图所示:
三、
为防止跳板机连接过久自动断开,所以这里添加登录脚本直接发送top命令。点击登录脚本,勾选上执行以下等待并发送规则,点击添加弹出等待发送规则添加窗口,在发送框填写top。具体配置看图
四、
接下来继续配置连接内网服务器的隧道,点击隧道再点击添加按钮进入隧道添加页面,源主机为本机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的快速命令集也是很方便的,可以编辑好常用命令,按指定快捷键快速输入这些命令。在查看中勾选快速命令,将显示在底部,在工具中找到快速命令集可以添加编辑快速命令。具体操作这里不再详细说明,看下图:
相关文章
- 【Linux】LVS --Linux虚拟服务器
- linux下epoll模型并发问题
- [Linux]linux下取消用户名和密码直接登录
- linux下apache服务器的安装、启动、查看
- Oracle Linux (OEL)下修改tmpfs大小并使之生效
- 配置vnc远程连接Linux和unix服务器图形界面安装Oracle
- Linux中怎么通过PID号找到对应的进程名及所在目录
- 【Linux基础】linux下修改ls显示的时间格式
- Linux基础之linux服务器服务器间拷贝文件
- linux下如何搭建svn服务器?
- Linux服务器的初步配置流程
- SUSE(Linux操作系统)
- Linux服务器调教日常
- [手游新项目历程]-52-Linux命令之tailf
- 008-Linux服务器如何查看自己的公网出口IP地址
- L83.linux命令每日一练 -- 第11章 Linux系统管理命令 -- ipcs和ipcrm
- L66.linux命令每日一练 -- 第十章 Linux网络管理命令 -- arp和ip
- L62.linux命令每日一练 -- 第九章 Linux进程管理命令 -- strace和ltrace
- L35.linux命令每日一练 -- 第五章 Linux信息显示与搜索文件命令 -- which和whereis
- Linux系统下shell脚本实战之mariadb创建数据库和表
- xshell连接Linux服务器快捷键(非常实用)
- linux基本功系列之hostname实战
- 嵌入式Linux开发,Ubuntu22下交叉编译报错:arch64-linux-gnu-gcc: error while loading shared libraries: libstdc++.so.
- Linux基础命令-alias设置别名
- 02 从头开始atac项目 ubuntu20 install r4.2 Linux系统环境配置 服务器版本的rstudio r install in linux /ubuntu/centos
- linux查看标准错误码工具
- suse linux通过iso文件安装gcc
- 周立功arm linux教程,极速搭建周立功IMX287A ARM Linux开发环境
- Linux + Nginx + Uwsgi + Django 搭建单服务器
- linux定时执行一个脚本
- 16个Linux服务器监控命令