linux iptables 基础及相关知识

                                   Iptablesa防火墙linux

 

Netfilter :位于linux内核的包过滤功能体系,称为linux防火墙的“内核态”tcp

Iptables:位于/sbin/iptables,用来管理防火墙规则的工具,称为linux防火墙的“用户态”ide

规则链工具

规则链的做用:对数据包进行过滤或处理spa

链的做用:容纳各类防火墙规则接口

链的分类依据:处理数据包的不一样时机ip

默认包括5种规则链路由

INPUT:处理入站数据包it

OUTPUT:处理出站数据包io

FORWARD:处理转发数据包

POSTROUTING:在进行路由选择后处理数据包

PREROUTING:在进行路由选择前处理数据包

规则表

表的做用:容纳各类规则链

表的划分依据:防火墙规则的做用类似

默认包括4个规则表

raw表:肯定是否对该数据包进行状态跟踪

mangle表:为数据包设置标记

nat表:修改数据包中的源,目标ip地址或端口

filter表:过滤数据包

规则表之间的顺序:raw--mangle--nat--filter

规则链之间的顺序:入站:PREROUTING--INPUT    出站:OUTPUT--POSTROUTING    转发:PREROUTING--FORWARD--POSTROUTING

规则链的匹配顺序:按顺序依次检查,匹配即中止(LOG策略列外)

若找不到相匹配的规则,则按该链的默认策略处理

 raw表:PREROUTING  OUTPUT

mangle表:5个链

nat表:PREROUTING   POSTROUTING  OUTPUT

filter表:INPUT  FORWARD  OUTPUT

iptables的基本语法:   iptables    -t 表名】   选项   链名    条件    -J    控制类型

注意:不指定表名时。默认指filter表    不指定链名时,默认表内的全部链   选项,链名,控制类型使用大写字母,其他均为小写。

选项汇总:

添加新的规则:  -A:在链的末尾追加一条规则

-I:在链的开头(或指定序名)插入一条规则

查看规则列表:  -L:列出全部规则条目

-n:以数字形式显示地址    

-V:以更详细的方式显示规则信息       

--line-numbers:查看规则时,显示规则的序号

删除,清空规则:   -D:删除链内指定序列号(或内容)的一条规则

   -F:清空全部的规则

设置默认策略:   -P:为指定链设置默认规则       

经常使用匹配条件汇总

 

通用匹配:   协议匹配:   -p 协议名

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

        接口匹配      -i 入站网卡    -o  出站网卡

隐含匹配:   端口匹配:   --sport 源端口    --dport 目标端口

        TCP标记匹配:     --tcp-flags  检查范围被设置的标记

        CMP类型匹配:     --icmp  -type  ICMP 类型

显示匹配:   多端口匹配:   -m multiport    --sports    |   --dports  端口列

Ip范围匹配:  -m  iprange --src-range   ip范围

MAC地址匹配: -m  mac     --mac-source   MAC地址

状态匹配:   -m   state     --state   链接状态

相关文章
相关标签/搜索