通過iptables做端口映射
通過iptables做端口映射
Iptables是Linux內核集成的IP信息包過(guo)濾系統,不同版本(ben)的linux系統對(dui)于iptables的安裝、配置也有(you)所區別,本(ben)文(wen)以(yi)Centos7系統為例(li),通過(guo)對(dui)iptables策(ce)略(lve)進行修改配置,實現對(dui)于指(zhi)定IP地(di)址的端口(kou)映(ying)射(she)及IP地(di)址轉換(NAT)。具體(ti)操(cao)作如下:
1.安裝(zhuang)iptables——使用下面命令進(jin)行安裝(zhuang)iptables服(fu)務:
yum -y install iptables-services

2.運行下列(lie)命令啟動(dong)iptables服(fu)務(wu):
systemctl start iptables
3.運(yun)行(xing)(xing)下列命令查看iptables服(fu)務(wu)運(yun)行(xing)(xing)狀態,狀態為“active”表示iptables服(fu)務(wu)已在運(yun)行(xing)(xing):
service iptables status

4.設置iptables的開機自啟動(dong):
systemctl enable iptables

5.echo net.ipv4.ip_forward=1>>/etc/sysctl.conf //開啟系統路由模式功能(neng)
sysctl -p //使內核修改(gai)生效

6.用(yong)DNAT做端口映(ying)射:
例如:
iptables -t nat -A PREROUTING -p tcp –m tcp --dport 12345 -j DNAT --to-destination 192.168.10.26:3389
//將訪問本服務器(qi)TCP12345接口的(de)流量映(ying)射到192.168.10.26的(de)3389端口
7.用SNAT作源地址轉換,以使回(hui)應包(bao)能正確返回(hui):
例如:
iptables -t nat -A POSTROUTING -d 192.168.10.26/32 -p tcp –m tcp --dport 3389 -j SNAT --to 192.168.233.142 //主機192.168.10.26回應訪問(wen)其(qi)3389端口的流量包,經192.168.233.142
向外映射

8.保(bao)存添(tian)加的規(gui)則:
iptables-save > /etc/sysconfig/iptables

