1. iptables 与 netfilter 的区别
      iptables(用户态),netfilter(内核态)通常都用来指Linux防火墙,不同的是iptables指的是管理工具,而netfilter是Linux内核中实现包过滤的结构。
2. iptables中的表与链
分为5个链:
INPUT 进站  OUTPUT 出站 FORWARD 包转发  PREOUTING 包路由之前  POSTOUTING  包路由之后
总共分为4张表 
raw  跟踪机制   :   里面包括  OUTPUT  PREPUTING
mangle 打标记 :  包含全部5个链
nat  Ip地址转换 : 包含 PREOUTING POSTOUTING OUTPUT
filter 包过滤 : INPUT OUTPUT FORWARD
3. 管理与配置 iptables
4. iptables命令格式
iptables –t 表名 命令选项 链名 条件匹配 –j 动作
5. iptables规则
-A  在尾部添加
-D  删除某一条
-I   插入(默认是第一个)
-R  替换修改
-L  list
-F  清空一个链
-N  新建链
-X  删除自定义链
-P  设置policy
-n  数字显示
-v  查看版本
-h  帮助信息
6 iptables命令范例
添加插入规则

查看

清空删除规则

设置规则链的默认策略

获得Iptables相关选项用法的帮助信息

新增,删除自定义规则链

清空并删除自定义链

条件匹配
协议匹配使用参数 –p

地址匹配
-s 源地址匹配  -d 目标地址匹配

网络接口匹配
使用参数 –i 进入数据包网卡 –o 发送数据包网卡

隐含条件匹配
端口匹配
--sport 源端口  --dport 目标端口   :隔开端口号表示范围

显示条件陪陪
-m mac --mac-source 源mac地址

多端口匹配
多加入 –m multiport

多IP地址匹配
多加入 –m iprange    --src-range 源地址范围  --dst-range 目标地址范围

状态匹配
NEW  新连接  ESTABLISHED响应请求已建立的  RELATED 与已有连接相关的

数据包控制
ACCEPT允许通过   DROP 直接丢弃  REJECT 拒绝 但回复拒绝信息 LOG 记录日志
导入导出防火前规则
保存   iptables-save
将调试好的规则导入文件中  iptables-save > /etc/sysconfig/iptables
导入
iptables-restore < /etc/sysconfig/iptables
编写防火墙脚本
1. 设置网络
INET_IP='外网地址'
INET_IF='对应网卡'
LAN_IP='内网地址'
LAN_IF='对应网卡'
2.加载相关内核模块
3.开启路由转发功能
/sbin/sysctl –w net-ipv4.ip_forward=1
4.配置规则    iptables 命令在  /sbin下

http://blog.51cto.com/zhengweiit/380426