linux的iptables nat利用

场景说明:

A: 172.45.255.14:3389 要访问的目标windows主机
B: 172.45.255.11 linux代理
C: 172.45.211.22 客户机
B对C的访问没有限制,A和B在同一个网段可以互访,C无法直接访问A的远程桌面

决方案:

##在B上面操作
iptables -t nat -A PREROUTING -p tcp --dport 53388 -j DNAT --to 172.45.255.14:3389
iptables -t nat -A POSTROUTING -p tcp -d 172.45.255.14 --dport 3389 -j SNAT --to 172.45.255.11
sysctl -w net.ipv4.ip_forward=1

结果:

C可以通过B的53388端口访问A的远程桌面

其他扩展:

命令加错删除:

iptables -t nat -L PREROUTING num   #查看nat表中PREROUTING第几条num
iptables -t nat -D PREROUTING num   #删除第几条num

iptables -t nat -L POSTROUTING num   #查看nat表中POSTROUTING第几条num
iptables -t nat -D POSTROUTING num   #删除第几条num

Snat配置:

## X服务器有内外和公网两张网卡,两个IP,以下配置在X机器上面操作
iptables -t nat -I POSTROUTING -s 192.68.10.1/24 -j SNAT --to-source 211.136.11.11
#其中 192.168.10.0/24为内外IP段,211.136.11.11为X的公网IP,
#内网段的服务器需要配置默认路由指向X服务器的内外IP

Leave a Reply

Your email address will not be published. Required fields are marked *