好吧,标题比较拗口。想象这样一种场景:
外网—-linux(可以是路由器、也可以是物理机)—-内网—-windows
那么外网怎么能远程桌面到内网的windows呢,简单来说,就是通过配置linux的nat端口映射到windows的3389端口:
1 2 3 4 5 6 7 8 9 |
NETPC="inner.ip" NETPORT="443" OUTIP="outer.ip" iptables -A INPUT -j ACCEPT -p tcp -d $OUTIP --dport $NETPORT iptables -t nat -A PREROUTING -p tcp -m tcp -d $OUTIP --dport $NETPORT -j DNAT --to-destination $NETPC:3389 iptables -t nat -A POSTROUTING -p tcp -m tcp -d $NETPC --dport 3389 -j SNAT --to-source $OUTIP iptables -A FORWARD -i eth0 -s $OUTIP -p tcp --dport 3389 -j ACCEPT iptables -A FORWARD -o eth0 -d $OUTIP -p tcp --dport $NETPORT -j ACCEPT |
默认linux没有开启转发,需要先开启:
1 |
sysctl -w net.ipv4.ip_forward=1 |