温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

利用脚本自动配置iptables的NAT端口映射

发布时间:2020-06-09 23:44:51 阅读:1566 作者:nxlhero 栏目:安全技术
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

上篇博客写了如何在VMware ESX和XenServer环境下配置NAT,解决了内网虚拟机访问外网的问题,还没解决外网访问内网的问题。

每增加一台虚拟机就增加几条映射规则太麻烦,实现把端口都映射好了,就不需要每次添加了。

端口映射规则如下:

num是内网IP地址的最后一个数

 ssh端口22映射到 10000+num

比如一个内网地址为192.168.1.5的虚拟机,它的22号端口映射到主机的10005端口。

vnc的590x端口(只提供两个端口)

5901端口映射到 20000+内网地址最后一个数x10+1

5902端口映射到 20000+内网地址最后一个数x10+2

比如192.168.1.20的1号VNC映射到主机的20000+20x10+1=20201

192.168.1.200的5号端口映射到主机的20000+200x10+5=22005

192.168.1.201的2号端口映射到主机的20000+201x10+5=22012

windows远程桌面的3389端口映射到30000+num

http的80端口映射到40000+num

利用脚本完成配置:

#!/bin/bash #remap port # i is the last num of the inner address for i in $(seq 50) do         if [ $i -ne 1 ]         then         #ssh port 22         #port 22 is mapped to 10000+i         let "mapport=$i + 10000"         /sbin/iptables -t nat -A PREROUTING -i eth2 -p tcp -d 10.109.247.169 --dport $mapport -j DNAT --to-destination 192.168.1.$i:21         echo 10.109.247.169:$mapport mapped to 192.168.1.$i:22          #vnc port 590x         #port 590x is mapped to 20001+ix10+x         let "j=$i * 10"         let "mapport=$j + 20001"         /sbin/iptables -t nat -A PREROUTING -i eth2 -p tcp -d 10.109.247.169 --dport $mapport -j DNAT --to-destination 192.168.1.$i:5901         echo 10.109.247.169:$mapport mapped to 192.168.1.$i:5901         let "mapport=$mapport + 1"         /sbin/iptables -t nat -A PREROUTING -i eth2 -p tcp -d 10.109.247.169 --dport $mapport -j DNAT --to-destination 192.168.1.$i:5902         echo 10.109.247.169:$mapport mapped to 192.168.1.$i:5902              #remote desktop port 3389         #port 3389 is mapped to 30000+i         let "mapport=$i + 30000"         /sbin/iptables -t nat -A PREROUTING -i eth2 -p tcp -d 10.109.247.169 --dport $mapport -j DNAT --to-destination 192.168.1.$i:3389         echo 10.109.247.169:$mapport mapped to 192.168.1.$i:3389          #http port 80         #port 80 is mapped to 40000+i         let "mapport=$i + 40000"         /sbin/iptables -t nat -A PREROUTING -i eth2 -p tcp -d 10.109.247.169 --dport $mapport -j DNAT --to-destination 192.168.1.$i:3389         echo 10.109.247.169:$mapport mapped to 192.168.1.$i:80         fi done 
 

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI

开发者交流群×