iptables防火墙
防火墙分类:硬件防火强(要钱的,获取那g bin)并且和我们没关系)。软件防火墙:iptables
http:// blog.csdn.net/sdytlm/article/details/6544913
规则链:
- 规则的作用:对数据包进行过滤或处理
- 链的作用:容纳各种防火墙规则
- 链的分类依据:处理数据包的不同时机
- INPUT:处理入站数据包
- OUTPUT:处理出战数据包
- FORWARD:处理转发数据包
- POSTROUTING:在进行路由选择后处理数据包
- PREROUTING:在进行路由选择前处理数据包
iptables命令:
iptables [-t 表名] 选项 [链名] [条件] [-j 控制类型]
注意事项:
- 不指定表名,默认指 filter表
- 不制动链名,默认指表内的所有链
- 除非设置链的默认策略,否则必须指定匹配条件
- 选项、链名、控制类型使用大小写字母,其余均为小写
数据包常见的控制类型:
- ACCEPT:允许通过
- DROP:直接丢弃,不给出任何回应
- REJECT:拒绝通过,必要时会给出提示
- LOG:记录日志信息,然后传给下一条规则继续匹配
单词:
-[root@moban6 ~]# iptables -t nat -L -nv
Chain PREROUTING (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
- policy:规则
- source:源(src)
- destination:目标(dest)
- out:从那个网卡出去
- in:从哪个网卡进来
常见选项:
-
增加新的规则(链下面已有好多规则)
-A: 再链的末尾追加一条规则
-I: 再链的开头(或指定序号)插入一条规则
例:iptables -I INPUT -
查看规则列表
-L: 列出所有的规则条目
-n: 以数字形式显示地址,端口等信息
-v: 以更详细的方式显示规则信息
–line-numbers: 查看规则是,显示规则的序号. --line 与之同效
例:iptables -L -nv -
删除清空规则(iptables stop : 指所有链还原成默认允许通过状态)
-D: 删除链内指定序号(或内容)的一条规则
-F: 清空所以的规则(细节规则,链下面的具体的规则)不清空链规则(默认规则)
例:iptables -F INPUT(指定链) iptables -D INPUT 2 (指定某一个链的某个规则) -
修改替换规则
-R: 修改替换规则
例:iptables -R INPUT 1 -p icmp -j ACCEPT -
设置默认链规则(修改时,优先在相应链下面给自己设置允许,然后DROP。)
-P:为指定的链设置默认规则
例:iptables -P FORWARD DROP(指定forward默认关闭,这是链默认规则,其下面可以添加允许) -
对数据包处理
-j:对数据包的处理。ACCEPT/DROP
例:iptables -j DROP -
模块
-m 附加模块
规则的匹配类型
- 通用匹配:可直接使用,不依赖与其它条件或扩展,包括网络协议,IP地址,网络接口等条件
- 隐含匹配:要求以特定的协议匹配作为前提,包含端口,TCP标记,ICMP类型等条件
- 显示匹配:要求以-m 扩展模块 的形式明确指出类型,包括多端口,MAC地址,IP范围,数据包等条件
通用匹配
- 协议匹配: -p 协议名 -p icmp
- 地址匹配: -s 源地址 -d 目标地址
- 接口匹配: -i 入站网卡 -o 出站网卡 <