iptables P配置DNAT SNAT

内网的server 为HTTP,IP:10.0.0.85  linux防火墙FW有两个网卡,etho 192.168.122.11连接外网,eth1 10.0.0.250连接外网,拓扑如下:

在server上添加一条默认路由:

 

  
  
  
  
  1. [root@vm1 ~]# route add default gw 10.0.0.250 
  2.  开启HTTP  注意将不用的网卡down掉
  3. ifconfig eth1(lo) down

FW临时添加网卡eth1:

  
  
  
  
  1. [root@vm1 ~]# ifconfig eth0 10.0.0.250 netmask 255.255.255.0 up 

FW上开启内核IP转发:

  
  
  
  
  1. [root@vm1 ~]# cat /etc/sysctl.conf  
  2. net.ipv4.ip_forward = 1 
  3. [root@vm1 ~]# sysctl -p 
  4.  
  
  
  
  
  1. [root@vm1 ~]# iptables -F -t nat 
  2. [root@vm1 ~]# iptables -X -t nat 
  3. [root@vm1 ~]# iptables -Z -t nat 
  4. [root@vm1 ~]# iptables -t nat -P PREROUTING  ACCEPT 
  5. [root@vm1 ~]# iptables -t nat -P POSTROUTING ACCEPT 
  6. [root@vm1 ~]# iptables -t nat -P OUTPUT      ACCEPT 
  7. [root@vm1 ~]# iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination  10.0.0.85 
  8. [root@vm1 ~]# /etc/init.d/iptables save 保存 
  9. iptables: Saving firewall rules to /etc/sysconfig/iptables:[  OK  ] 
  10. [root@vm1 ~]# /etc/init.d/iptables restart   重启 
  11. [root@vm1 ~]# /etc/init.d/httpd start 开启HTTP 
  12. Starting httpd:  

这样在外网的92.168.122.1就可以通过访问192.168.122.11去访问WEB server了

如果是FTP SERVER那么还得做个SNAT,如:

   
   
   
   
  1. [root@vm1 ~]# iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 192.168.122.1 
  2. [root@vm1 ~]# modprobe nf-nat-ftp 



 

 

你可能感兴趣的:(iptables,DNAT,SNAT)