如何在Window中进行TCP端口转发(Port Forwarding)

在Linux系统中我们可以使用ssh或者autossh进行端口转发。

在Linux中使用ssh或者autossh进行端口转发可以查看这篇博客:https://www.ibm.com/developerworks/cn/linux/l-cn-sshforward/

在Window中我们可以使用netsh命令进行端口转发。

注意:在window中现在只能针对TCP请求进行端口转发,不能对UDP协议进行转发。

一、端口转发介绍

端口转发(Port Forwarding):通过监听一个端口,将所有收到的数据,转发到另一个配置的本地端口或者远程地址的端口中。

可以看一张图片来大致的了解一下端口转发。

上面的图解:当我们去请求【本地:PortA】的时候,相当于请求的【远程或者本地:PortB】一样。

二、在window中使用netsh命令

1.在window中,进行端口转发时,使用portproxy模式下进行配置。必须使用管理员身份运行下面的命令。

2.创建一个端口转发:

      netsh interface portproxy add v4tov4 listenport=3340 listenaddress=0.0.0.0 connectaddress=192.168.15.178 connectport=3389

     参数说明:

  • interface portproxy:切换到端口代理的上下文中。固定不变。
  • add:表示添加一个端口转发。
  • v4tov4:表示添加的类型。还可以v4tov6,v6tov4,v6tov6四种参数
  • listenport:想要监听那个端口,相当于图1中的PortA
  • listenaddress:配置监听的地址,如何配置0.0.0.0表示本地的任何地址,如果是127.0.0.1,只有在请求通过这个回环地址,才会进行端口转发。监听的网卡地址。
  • connecport:转发到的端口,相当于图1中的PortB。
  • connectaddress:配置的转发的地址,可以是这个机器连接到的任何地址。

3.查看所有的端口转发:

     netsh interface portproxy show all

4.删除一个端口映射

    netsh interface portproxy delete v4tov4 listenport=3340 listenaddress=0.0.0.0

5.删除所有的端口映射

   netsh interface portproxy reset

6.显示端口配置脚本

    netsh interface portproxy dump

三、使用示例

1.远程连接示例1:

     实现目的:我们想通过一个非标准的远程桌面连接端口,进行远程桌面连接请求。我们想通过请求3340,来完成远程桌面连接。而不是使用默认的端口3389。

    实现步骤:

  1. 远程桌面连接默认的使用的端口是3389端口首先将3340转发到3389,完成请求3340相当于请求3389。完成请求3340完成远程桌面连接。

netsh interface portproxy add v4tov4 listenport=3340 listenaddress=0.0.0.0 connectport=3389 connectaddress=192.168.15.178

2.查看端口转发的映射:

netsh interface portproxy show all

或者使用

netstat -ano | findstr 3340

我们可以从中看到,正在监听3340端口

如果没有显示的话,检查IP Helper服务是否开启。

检查IPv6支持是否开启,

3.连接远程桌面服务:

从而使用3340端口完成远程桌面连接。

注意:进行远程桌面连接之前,确保我们的电脑可以进行远程桌面连接。

2.使用示例2:

使用目的:本地机器通过浏览器请求服务器上的资源(192.168.15.177:8888)的资源。

使用步骤:

1.将本地的80端口请求,转发到另一台机器8888端口。

netsh interface portproxy add v4tov4 listenport=80 listenaddress=0.0.0.0 connectport=8888 connectaddress=192.168.15.177

2.直接在浏览器上请求:http://localhost,相当于请求了192.168.15.177:8888的资源内容。


更多精彩内容:请关注公众号:

SecureCRT是一款远程访问工具,可以通过端口转发实现连接跳板机并访问目标服务器的功能。配置SecureCRT的端口转发步骤如下: 1. 首先,需要配置跳板机的连接信息。在SecureCRT,点击"File" -> "Quick Connect",填写跳板机的Hostname(IP)、Port(端口号)和Username(登录名),然后保存该连接信息。 2. 双击建立的连接,输入跳板机的密码,并保存连接。这样就完成了与跳板机的连接。 3. 在连接的右键菜单,选择"Properties" -> "Port Forwarding" -> "Add",添加端口转发配置。 4. 在端口转发配置,需要配置本机访问的IP和端口号(Local),以及目标服务器的IP和端口号(Remote)。例如,将本机的127.0.0.1:1888转发到目标服务器的IP和端口上。 5. 在SecureCRT配置访问连接,点击"File" -> "Quick Connect",填写本机的Hostname(IP)、Port(端口号)和Username(登录名)。注意,这里的Hostname和Port应该与上一步的Local栏配置的信息相对应。而Username则是目标服务器的登录名。 6. 在连接后,输入目标服务器的密码以完成连接。 通过以上配置,你就可以成功地通过SecureCRT连接跳板机,并实现端口转发来访问目标服务器了。在访问目标服务器时,需要保持跳板机和本地访问连接的连接状态,以确保正常访问目标服务器。同时,SecureFX可以用于进行FTP协议的文件操作,也可以在其配置访问连接进行文件传输操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值