利用脚本自动配置iptables的NAT端口映射
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,上篇博客写了如何在VMware ESX和XenServer环境下配置NAT,解决了内网虚拟机访问外网的问题,还没解决外网访问内网的问题。每增加一台虚拟机就增加几条映射规则太麻烦,实现把端口都映射好了,
千家信息网最后更新 2026年11月01日利用脚本自动配置iptables的NAT端口映射
上篇博客写了如何在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
端口
主机
地址
个数
配置
规则
问题
脚本
上篇
两个
博客
桌面
环境
麻烦
加一
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
国智互联网科技
科技互联网公司装修
河南真二互联网科技有限公司
互联网与科技发展
互联网最新的科技有限公司
互联网 科技创新
奇酷互联网科技
鑫亿盛互联网科技
长亮科技互联网金融
互联网科技汛
农村开互联网科技讲堂
创业天下互联网科技有限公司
辽宁互联网新科技
广州市恰铎互联网科技有限公司
佛山市翊博互联网络科技有限公司
互联网科技和法律行业
科技大学互联网
黑科技 体验场景 互联网大会
互联网科技的前景
恒生科技互联网指数十大成分股
广州淘业互联网络科技
互联网和科技技术
互联网巨头反垄断金融科技
中资互联网科技
凡科互联网科技
深圳天众互联网科技公司
碳银互联网科技有限公司
欧洲十大科技互联网公司
互联网金融科技公司干啥的
科技大学互联网