日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

端口转发

發布時間:2024/1/1 62 豆豆
生活随笔 收集整理的這篇文章主要介紹了 端口转发 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

簡介

端口轉發是服務器A(地址:端口)將接收到的通信客戶端C(地址:端口)完全轉發給另一個服務器B(地址:端口),實現客戶端C與服務器B的通信。可用于對服務器B隱藏客戶端C的真實地址。端口轉發也可應用于訪問內網服務器(相當于服務器B)。

實現端口轉發

可以應用于以下兩種情況:

  • 當客戶端C可以正向連接服務器A。
  • 當客戶端C無法正向連接服務器A,但服務器A可以反向連接客戶端C。
  • 情況1:正向連接
    • 服務器A為windows系統

    實驗環境:

    主機ip端口
    Client(Kali)192.168.246.136\
    ServerA(Win10)192.168.246.1308888
    ServerB(win7)192.168.246.1316666

    方法:使用netsh(windows自帶),需要管理員權限進行配置。
    步驟:

  • 在ServerA上以管理員身份運行cmd.exe
  • 添加轉發規則:
    netsh interface portproxy add v4tov4 listenaddress=192.168.246.130 listenport=8888 connectaddress=192.168.246.131 connectport=6666
  • 由于防火墻默認阻擋了入站通信,因此需要添加防火墻規則:
    netsh advfirewall firewall add rule name="transmit" protocol=TCP dir=in localport=8888 action=allow
  • 在ServerB上開啟監聽6666端口:
    nc.exe -lvp 6666
  • 在Client上連接ServerA的8888端口
    nc 192.168.246.130 8888

    ServerB監聽到的是來自ServerA的連接
  • 此處netsh可能常用到的命令:

    查看端口轉發規則:netsh interface portproxy show all 刪除端口轉發規則:netsh interface portproxy delete v4tov4 listenaddress=192.168.246.130 listenport=8888 查看防火墻規則:netsh advfirewall firewall name="transmit" 刪除防火墻規則:netsh advfirewall firewall delete rule name="transmit"

    更多命令可以使用netsh -h查看

    • 服務器A為Linux系統

    實驗環境:(交換Client和ServerA角色)

    主機ip端口
    Client(Win10)192.168.246.130\
    ServerA(Kali)192.168.246.1368888
    ServerB(win7)192.168.246.1316666

    方法:使用iptables(Linux自帶),也需要管理員權限。
    步驟:

  • 切換root權限(su root)
  • 添加轉發規則,分別如下
    目的地址轉換規則:
    iptables -t nat -A PREROUTING -p tcp -d 192.168.246.136 --dport 8888 -j DNAT --to-destination 192.168.246.131:6666
    源地址轉換規則:
    powershell iptables -t nat -A POSTROUTING -p tcp -d 192.168.246.131 --dport 6666 -j SNAT --to-source 192.168.246.136
  • 開啟轉發功能(將1寫入到/proc/sys/net/ipv4目錄下的ip_forward文件中,不修改的情況下是0):
    echo 1 >/proc/sys/net/ipv4/ip_forward
  • 在ServerB上開啟監聽6666端口:
    nc.exe -lvp 6666
  • 在Client上連接ServerA的8888端口
    nc.exe 192.168.246.130 8888

    ServerB監聽到的是來自ServerA的連接
  • 注:使用iptables配置的端口轉發規則,在重啟后都會失效,包括開啟轉發功能也會恢復到默認的0。
    可以使用下面命令保存和恢復轉發規則

    保存規則:iptables-save > xxxxx 恢復規則:iptables-restore < xxxx 注:保存和回復-之間沒有空格;xxxx為保存的文件路徑,例如/root/Desktop/rule,指的是/root/Desktop下的rule文件。

    此處iptables可能常用到的命令:

    查看轉發規則:iptables -L -t nat --line-numbers 刪除所有規則:iptables -F -t nat 刪除指定規則:iptables -t nat -D PREROUTING 1(刪除nat表的PREROUTING鏈的第一條規則)

    更多命令可以使用iptables -h查看,或者參考這篇文章。

    情況2:反向連接


    方法:使用EarthWorm,Linux和Windows使用方法相同。
    實驗環境:

    主機ip端口
    Client(Win10)192.168.246.1306868
    ServerA(Kali)192.168.246.1368888
    ServerB(win7)192.168.246.1316666

    步驟:

  • 在Client上,監聽6868端口,6868端口接收到的是反彈在8888端口上的:ew_for_Win.exe -s lcx_listen -l 6868 -e 8888
  • 在ServerA上,反彈給Client的8888端口的是ServerA連接在ServerB的6666端口的連接:
    ew_for_linux64 -s lcx_slave -d 192.168.246.130 -e 8888 -f 192.168.246.131 -g 6666

    Client上顯示OK!
  • 在ServerB上,監聽6666端口:nc64.exe -lvp 6666
  • 在Client上,連接本地的6868端口:nc.exe 127.0.0.1 6868

    同樣,ServerB監聽到的是來自ServerA的連接
  • 此處EarthWorm一些參數可以使用-h查看。

    總結

    以上是生活随笔為你收集整理的端口转发的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。