二,配置一个NAT表放火墙
  1,查看本机关于NAT的设置情况
[root@tp rc.d]# iptables -t nat -L
Chain PREROUTING (policy ACCEPT)
target       prot opt source                 destination
Chain POSTROUTING (policy ACCEPT)
target       prot opt source                 destination
SNAT         all    --    192.168.0.0/24         anywhere              to:211.101.46.235
Chain OUTPUT (policy ACCEPT)
target       prot opt source                 destination
  我的NAT已经配置好了的(只是提供简单的代理上网功能,还没有添加防火墙规则).关于怎么配置NAT,参考我的另一篇文章
  当然你如果还没有配置NAT的话,你也不用清除规则,因为NAT在默认情况下是什么都没有的
  如果你想清除,命令是
  [root@tp ~]# iptables -F -t nat
  [root@tp ~]# iptables -X -t nat
  [root@tp ~]# iptables -Z -t nat
  2,添加规则
  添加基本的NAT地址转换,(关于如何配置NAT可以看我的另一篇文章),
  添加规则,我们只添加DROP链.因为默认链全是ACCEPT.
  防止外网用内网IP欺骗
  [root@tp sysconfig]# iptables -t nat -A PREROUTING -i eth0 -s 10.0.0.0/8 -j DROP
  [root@tp sysconfig]# iptables -t nat -A PREROUTING -i eth0 -s 172.16.0.0/12 -j DROP
  [root@tp sysconfig]# iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.0/16 -j DROP
  如果我们想,比如阻止MSN,QQ,BT等的话,需要找到它们所用的端口或者IP,(个人认为没有太大必要)
  例:
  禁止与211.101.46.253的所有连接
  [root@tp ~]# iptables -t nat -A PREROUTING    -d 211.101.46.253 -j DROP
  禁用FTP(21)端口
  [root@tp ~]# iptables -t nat -A PREROUTING -p tcp --dport 21 -j DROP
  这样写范围太大了,我们可以更精确的定义.
  [root@tp ~]# iptables -t nat -A PREROUTING    -p tcp --dport 21 -d 211.101.46.253 -j DROP
  这样只禁用211.101.46.253地址的FTP连接,其他连接还可以.如web(80端口)连接.
  按照我写的,你只要找到QQ,MSN等其他软件的IP地址,和端口,以及基于什么协议,只要照着写行了.
  后:
  drop非法连接
  [root@tp ~]# iptables -A INPUT     -m state --state INVALID -j DROP
  [root@tp ~]# iptables -A OUTPUT    -m state --state INVALID -j DROP
  [root@tp ~]# iptables-A FORWARD -m state --state INVALID -j DROP
  允许所有已经建立的和相关的连接
  [root@tp ~]# iptables-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
  [root@tp ~]# iptables-A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
  [root@tp ~]# /etc/rc.d/init.d/iptables save
  这样可以写到/etc/sysconfig/iptables文件里了.写入后记得把防火墙重起一下,才能起作用.
  [root@tp ~]# service iptables restart
  别忘了保存,不行写一部保存一次.你可以一边保存,一边做实验,看看是否达到你的要求,
  上面的所有规则我都试过,没有问题.
  写这篇文章,用了我将近1个月的时间.查找资料,自己做实验,希望对大家有所帮助.如有不全及不完善的地方还请提出.
  因为本篇文章以配置为主.关于IPTABLES的基础知识及指令命令说明等我会尽快传上,当然你可以去网上搜索一下,还是很多的.