国产化的SSH工具VxTerm:SSH隧道的使用

一、什么是SSH隧道?

现在的linux下安装的OpenSSH,默认都会支持SSH隧道。

SSH隧道:它可以支持让你本地的客户端电脑与远端的Linux建立一条可以称为虚拟线路的通道。它可以形象的表现为,你可以把这条隧道当成连接两端的一条虚拟的网络线路,通过这条线路,就可以实现双方的网络环境的互访:即你本端的的网络环境下的其它的电脑或网络设备,可以访问远端的SSH服务器可以访问的任何其它的网络设备或服务器,反之亦然。

二、使用SSH隧道。

您可以使用Windows10以上自带的SSH客户端,或者是linux下自带的ssh客户端,通过命令行参数的方式配置这条隧道的各种使用方式。由于本人对于这种命令行方式的操作不熟悉,在此不分享这种方式的使用方法。

三、VxTerm可以直接就配置和使用SSH隧道。

1、正向:Direct TCP/IP 方式

     在本地监听一个端口,本地网络访问此端口时,VxTerm将本地访问请求通过SSH隧道将本地请求与服务器端指定的网络资源建立关联,达到访问本地的端口时可以访问到服务器端的网络资源的目的。

在这种方式下,本地的其它网络设备,只要访问VxTerm建立起来的一个本地可以访问的端口,其访问请求就可以直达远端的网络环境中的被定义的资源。

2、反向:Forward方式

    在服务器端监听一个端口,VxTerm将本地网络中的某一资源与该端口建立关联,达到服务器端的网络访问该监听端口时,可以通过VxTerm与服务器建立的SSH隧道访问到本地资源的目的。

相当于是端口映射,俗称的内网穿透,就是这种方式。

以上两种方式,在服务端启动了OpenSSH后,服务端就不需要再进行其它的配置,只需要本端电脑运行一个VxTerm,配置好本地的隧道信息,启动后就可以达到目的。

四、VxTerm可以建立的代理功能:

    1、反向代理:一般可以称为内网穿透。

    可以达到服务器端的设备访问本地网络的目的。

    比如,本地网络在没有互联网静态IP和互联网IP的时候,可以将本地的web服务端口映射到服务器端,互联网用户访问服务器端的IP端口即可以访问到本地发布的WEB服务。

    2、正向代理:分两种方式

    2.1    在本地监听特定端口,建立与服务器端特定资源的一对一的关联。此方式与反向代理的方式基本一致。

    2.2   Sock5方式

    当前的VxTerm 版本仅支持1和2.1两种方式,2.2中的Sock5方式将在以后的版本中实现。

五、操作说明:

    VxTerm 使用内置的VxMatScript脚本方式实现隧道的建立、启动、停止、修改等操作。

国产化的SSH工具VxTerm:SSH隧道的使用_第1张图片

    5.1、    TunnelList     ALL|Run|Stop|ID

    列出当前配置中的所有隧道。

>>标识================:ZPF01
>>类型	:(F)orward
>>描述		:反向代理:将本地的192.168.1.254:23映射到服务端的25423
>>分类名	:测试

>>远程监听IP		:
>>远程监听端口		:25423
>>本地目标IP		:192.168.1.254
>>本地目标端口		:23

>>正在运行		:否
>>最后消息


>>标识================:ZPF022
>>类型	:(F)orward
>>描述		:反向代理:将本地的192.168.1.6:5000映射到服务端的5000
>>分类名	:测试

>>远程监听IP		:
>>远程监听端口		:5000
>>本地目标IP		:192.168.1.6
>>本地目标端口		:5000

>>正在运行		:否
>>最后消息


>>标识================:ZPF03
>>类型	:(D)irect
>>描述		:正向代理:将服务端的192.168.0.33:5555映射到本地5555
>>分类名	:测试

>>本地监听IP		:
>>本地监听端口		:0
>>远程目标IP		:192.168.0.33
>>远程目标端口		:5555

>>正在运行		:否
>>最后消息

    当隧道已启动正在运行的时候,正在运行为是,最后消息显示该隧道在启动运行过程中收到的一些关键的信息。

    5.2、    TunnelAdd    ID标识 

    创建一个隧道。

    5.3、    TunnelEdit    ID标识, 名称 = 值 

    修改一个隧道的配置。有效的名称和值如下:

序号 名称 值 
1 标识 字符串,不要有逗号等特殊符号,系统不进行校验,如果含有这些特殊符号,可能会造成无法正常使用。
2 类型

1、(F)orward

     反向代理

2、(D)irect

     正向代理

3、(S)ock5

     未开放。

3 分类名 字符串,用于分类分组管理。
4 描述 字符串,描述此隧道的功能等
5 本地监听IP 、 Local_ListenIP 用于正向代理,可为空,则表示监听本地所有IP
6 本地监听端口、Local_ListenPort 用于正向代理,默认为0。请指定有效值1-65535,否则无法正常启动。
7 远程目标IP、Remote_DestIP 用于正向代理
8 远程目标端口、Remote_DestPort 用于正向代理
9 本地目标IP、Local_DestIP 用于反向代理
10 本地目标端口、Local_DestPort 用于反向代理
11 远程监听IP、Remote_ListenIP 用于反向代理
12 远程监听端口、Remote_ListenPort 用于反向代理

每条隧道一般由 监听IP:监听端口,目标IP:目标端口组成。

正向代理为本地监听,访问指定的远程目标IP和端口;

反向代理为远程监听,访问指定的本地目标IP和端口。

当隧道已启动时,不允许修改。

5.4、    TunnelDel    ID标识

    删除指定的隧道。

    当隧道已启动时,不允许删除

5.5、    TunnelStart     ID标识 

    启动一条隧道。

    隧道启动后,请用 TunnelList 查看其运行状态。

    当反向代理中的远程监听端口为0时,隧道可以多次启动,每次启动时服务器会自动分配一个可用的端口。最后分配的端口请用TunnelList 查看。

5.6、    TunnelStop    ID标识 

    停止隧道。

六、测试:

    运行 TunnelStart zpf01

    成功后,可以在服务端用 netstat -ant | grep 25423 看到,服务器已监听。

image.png

在服务器端中访问 telnet 127.0.0.1 25423

国产化的SSH工具VxTerm:SSH隧道的使用_第2张图片

可以正常访问到本地的 192.168.1.254:23的资源。

你可能感兴趣的:(VxTerm,ssh,服务器,运维)