天天看點

Windows 和 Linux 平台下的端口轉發工具

原文位址: http://unmi.cc/windows-linux-port-forwarding/

這裡記錄一下我曾經使用過的幾個端口轉發工具,即端口映射、端口重定向,和 NAT 也是差不多的概念。

安裝後,它預設使用 /etc/rinetd.conf 檔案,比如通過入口機通路某台内網的遠端桌面,或透過入口的 80 端口通路内網某機器的 8080 端口上的 Web 服務,可以這麼寫:

1

2

3

4

<code>#通過 61.108.218.106:3389 進來的請求重定向給 10.80.10.7:3389</code>

<code>61.108.218.106 3389 10.80.10.7 3389</code>

<code>#任何接口進來請求80端口重定向給 10.80.10.8:8080</code>

<code>0.0.0.0 80 10.80.10.8 8080</code>

格式是:【直接被通路的IP     端口号  重定向到機器IP  端口号】,中間用空格分開。

使用預設 /etc/rinited.conf 的話,直接執行 rinitd 就啟用你所配置的端口重定向規則。如果不是用的預設檔案就用參數 -c 指定配置檔案,如 rinitd -c /home/unmi/rinitd.conf。另外還可以指定 allow 和 deny 規則,隻需要 allow 關鍵字,可記錄日志檔案。隻需在 rinited.conf 檔案中再寫上

<code>#隻允許 218.20.68.* 通路,未被允許的則視為禁止</code>

<code>allow 218.20.68.*</code>

<code>logfile /var/log/rinetd.log</code>

那個防火牆軟體的 NAT 功能沒什麼可說,一般人都用不到。RemoteAnywhere 是可以進行遠端管理的,它帶了 Port Forwarding 功能,通過 Web 就能設定,相信為了簡單的端口重定向功能,誰也不願意裝上這個累贅,況且還不免費。

最初在 Windows 上我還是用的 FPipe,也是指令行式的,支援 TCP 和 UDP 協定。執行一個指令重定向一個端口,不能把重定向規則寫在配置檔案中。當然,你願意用批處理逐行讀配置一次次執行 fpipe 指令也行得通的,規則多了小心螢幕一片黑。

它就隻有一個可執行檔案 fpipe.exe。直接執行 fpipe 會顯示出它的指令說明的:

05

06

07

08

09

10

11

12

13

14

15

16

17

18

<code>C:\Documents and Settings\unmi&gt;fpipe</code>

<code>FPipe v2.1 - TCP/UDP port redirector.</code>

<code>Copyright 2000 (c) by Foundstone, Inc.</code>

<code>&lt;a href="http://www.foundstone.com/"&gt;http://www.foundstone.com&lt;/a&gt;</code>

<code>FPipe [-hvu?] [-lrs &lt;port&gt;] [-i IP] IP</code>

<code> </code><code>-?/-h - shows this help text</code>

<code> </code><code>-c    - maximum allowed simultaneous TCP connections. Default is 32</code>

<code> </code><code>-i    - listening interface IP address</code>

<code> </code><code>-l    - listening port number</code>

<code> </code><code>-r    - remote port number</code>

<code> </code><code>-s    - outbound source port number</code>

<code> </code><code>-u    - UDP mode</code>

<code> </code><code>-v    - verbose mode</code>

<code>Example:</code>

<code>fpipe -l 53 -s 53 -r 80 192.168.1.101</code>

比如,要完成上面 web 服務的重定向,以執行:

fpipe -i 61.108.218.106 -l 80 -r 80 -s 8080 10.80.10.8

這裡多了一層概念,就是端口,1. 請求哪個端口,2. 定向到它機的端口,3. 資料從哪個端口出

支援 UDP 加 -u 參數,執行後指令視窗不關閉,并會顯示連接配接日志。

繼續閱讀