暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

设置您的Windows跳板机

生有可恋 2022-09-14
3574

跳板机一般用于异构网络间的中转站,比如对方在防火墙上只给你开放了一台服务器的权限,你无法访问对方局域网的其它主机,但你能访问的这台服务器则有权限访问其它主机。那么这台服务器就可以作为对方网络的跳板机,有时又被称为前置机。

Windows 系统自带的 IP Helper 服务具有端口转发的功能,这个功能可以用来作为跳板,通过跳板机来访问其它主机的服务。


在 cmd 中运行 services.msc 检查 IP Helper 服务是否启动,Windows 的端口转发是由该服务提供的。在 “IP Helper” 服务的属性中可以查看服务描述:

“ IP Helper 服务:使用 IPv6 转换技术(6to4、ISATAP、端口代理和 Teredo)和 IP-HTTPS 提供隧道连接。如果停止该服务,则计算机将不具备这些技术提供的增强连接优势。”

当停用此服务时,端口转发将不生效。可以使用 netstat -an -p tcp 检查本地监听状态。

    netstat -an -p tcp| findstr LISTENING


    命令行启动 "IP Helper"服务:

      C:\> net start "IP Helper"
      IP Helper 服务正在启动 .
      IP Helper 服务已经启动成功。


      设置端口转发规则,示例:将远程主机 192.168.23.18 的 65530 端口映射到本地的 1111 端口

        netsh interface portproxy add v4tov4 listenport=1111 connectaddress=192.168.23.18 connectport=65530


        命令行说明:

          netsh interface portproxy add v4tov4 ?


          用法: add v4tov4 [listenport=]<integer>|<servicename>
          [connectaddress=]<IPv4 address>|<hostname>
          [[connectport=]<integer>|<servicename>]
          [[listenaddress=]<IPv4 address>|<hostname>]
          [[protocol=]tcp]


          参数:


          标记 值
          listenport - IPv4 侦听端口。
          connectaddress - IPv4 连接地址。
          connectport - IPv4 连接端口。
          listenaddress - IPv4 侦听地址。
          protocol - 使用的协议。现在只支持 TCP。


          命令执行后,检查是否生效:

            C:\> netsh interface portproxy show all


            侦听 ipv4: 连接到 ipv4:


            地址 端口 地址 端口
            --------------- ---------- --------------- ----------
            * 1111 192.168.23.18 65530

            可以看到远程主机的端口已经映射到了本地的1111端口,即可以直接访问跳板机的1111端口来间接访问目标主机。

            此时配置已生效,具体是否已经在本地开启对应端口的监听,需要通过netstat 命令进行查看:

              C:\> netstat -an -p tcp | findstr 1111
              TCP 0.0.0.0:1111 0.0.0.0:0 LISTENING


              如果想导出配置,可以执行以下命令:

                netsh interface portproxy dump > port.con


                如果配置错误,想删掉重新配,可以执行以下命令:

                  netsh interface portproxy reset


                  可以执行 add 命令重新配,也可以修改导出的配置文件,通过还原命令导入之前的配置:

                    netsh -f port.conf


                    如果有多个端口需要映射,可以直接在配置文件中修改,然后重新导入配置即可:

                      C:\> netsh interface portproxy dump
                      #========================
                      # 端口代理配置
                      #========================
                      pushd interface portproxy
                      reset
                      add v4tov4 listenport=1111 connectaddress=192.168.23.18 connectport=65530
                      popd
                      # 端口代理配置结束

                      比如上面 dump 出来的配置,直接重定向到文本文件,在其中 add 命令处复制多行,把端口改掉然后重新导入。


                      导入修改后的配置,效果如下:


                      从本地监听可以看到,本地的多个端口映射到了远程主机的同一个端口。这种将远程主机端口映射本地端口的转发机制也被叫做正向代理,反之将本地端口映射到远程主机的模式叫反向代理。

                      正向代理一般用于做跳板机,而反向代理则常用于在防火墙上打洞。

                      全文完。

                      如果转发本文,文末务必注明:“转自微信公众号:生有可恋”。

                             
                      文章转载自生有可恋,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                      评论