1、有一個私網,裏面好幾台電腦,IP是192.168.1.0/24
2、其中有一台是Linux,他上面有兩片網路卡,一片連私網,IP是192.168.1.11,一片連中華電信小烏龜,可以獲得公網IP(pp.pp.pp.pp),
3、私網中有一台是Windows 11,只有一個私網IP(192.168.1.22)
4、我想控制Windows11那台RDP,但想從192.168.1.11那台的公網IP pp.pp.pp.pp進入
5、我從外面網路的RDP用pp.pp.pp.pp:3389就可以連入私網那台192.168.1.22的Windows 11
6、想問高手們在192.168.1.11那台Linux上的iptable要怎麼寫?
有高手可以解惑嗎?謝謝。
如果外網不是走Linux出去,那應該還有另一台路由器也取得中華的公網IP (假設是aaa.bbb.ccc.ddd),這時你只要在那台路由上設定端口轉發(port forwarding)即可 WAN:3389 -> 192.168.1.22:3389
RDP連線aaa.bbb.ccc.ddd:3389即可連到Win11
方法二: (理論應該可行,但我沒實際試過)
可利用Linux iptalbes 的端口轉發達到你的需求 (前提是Linux要和Win11可互通)
詳情可參考 https://www.coonote.com/linux-note/linux-iptables-forwarding-method.html
hdg8gg wrote:
1、有一個私網,裏面好幾台電腦,IP是192.168.1.0/24
2、其中有一台是Linux,他上面有兩片網路卡,一片連私網,IP是192.168.1.11,一片連中華電信小烏龜,可以獲得公網IP(pp.pp.pp.pp),
3、私網中有一台是Windows 11,只有一個私網IP(192.168.1.22)
4、我想控制Windows11那台RDP,但想從192.168.1.11那台的公網IP pp.pp.pp.pp進入
5、我從外面網路的RDP用pp.pp.pp.pp:3389就可以連入私網那台192.168.1.22的Windows 11
6、想問高手們在192.168.1.11那台Linux上的iptable要怎麼寫?
iptables -t nat -A PREROUTIING -d pp.pp.pp.pp -p tcp --dport 3389 -j DNAT --to-destination 192.168.1.22
iptables -t nat -A POSTROUTING -d pp.pp.pp.pp -p tcp --dport 3389 -j SNAT --to-source 192.168.1.11
大致上像這樣。
簡單說明如下:
第一條就只是簡單的轉址/DNAT
第二條則是同時做SNAT,好讓回來的封包能正確走回Linux這台。
如果看不懂上面的規則,或是不知道什麼是SNAT、DNAT,請詳讀iptables相關文件。
注意事項:
1.請不要直接使用這些規則,尤其是開3389給RDP是危險動作,根本是在歡迎不請自來的攻擊者來打。
最好改成透過VPN連入,或至少要改Port像這樣:
iptables -t nat -A PREROUTIING -d pp.pp.pp.pp -p tcp --dport 13839 --to-destination 192.168.1.22:3389
13839這個port就是你外部連的port (pp.pp.pp.pp:13839),請自己改成想要的Port
2.該載入的kernel module要記得載入
3.別忘了同時用防火牆做管制,比如
iptables -A PREROUTING -d pp.pp.pp.pp -p tcp --dport 13839 -s ! 1.2.3.4 -j DROP
這樣限制除了來自1.2.3.4的連線,其他全部擋下來。
當然,你也可以這樣寫,直接整合到nat table上。
iptables -t nat -A PREROUTIING -s 1.2.3.4 -d pp.pp.pp.pp -p tcp --dport 13839 -j DNAT --to-destination 192.168.1.22
4.同3,別忘了開放連入,像這樣:
iptables -A PREROUTING -d pp.pp.pp.pp -p tcp --dport 13839 -s 1.2.3.4 -j ACCEPT
如果nat開了,但還是沒有封包從192.168.1.11這個interface出現,那就八成是被firewall攔下來,記得加上允許連入的規則。
(在Linux抓封包,你可以用tcpdump,gui的話可以用wireshark)
5.同4,別忘記檢查windows那台,防護系統是否已經開放192.168.1.11連RDP進來。
內文搜尋

X