详述iptables五种链接

一、初识防火墙

Firewall:防火墙,隔离工具;工作于主机或网络边缘,对于进出本主机或本网络的报文根据事先定义的检查规则作匹配检测,对于能够被规则匹配到的报文作出相应处理的组件;
防火墙类型分为: 主机防火墙 和网络防火墙
实现方法分为:软件防火墙(软件逻辑)和硬件防火墙(硬件和软件逻辑)

二、iptables五种链接

内置规则链逻辑图.png
iptables五种链接分别是prerouting、input 、output 、forward 、postrouting
  • prerouting:流入的数据包进入路由表之前。
  • input :通过路由表判断后目的地址是本机,然后进入本机内部资源。
  • output :由本机产生的数据向外转发
  • forward :通过路由表判断目的地址是本机,然后通过路由转发到其他地方。
  • postrouting:传出的数据包到达网卡出口前。
iptables的四张表

现在用的比较多的表是前两个:

  • 表(功能):

filter:过滤,防火墙;
nat:network address translation;用于修改源IP或目标IP,也可以改端口;
mangle:拆解报文,做出修改,并重新封装起来;
raw:关闭nat表上启用的连接追踪机制;

  • 表(功能)和链对应关系:

raw:PREROUTING, OUTPUT
mangle:PREROUTING,INPUT,FORWARD,OUTPUT,POSTROUTING
nat:PREROUTING,[INPUT,]OUTPUT,POSTROUTING
filter:INPUT,FORWARD,OUTPUT

  • 处理优先级:raw-->mangle-->nat-->filter
  • 报文流向:

流入本机:PREROUTING --> INPUT
由本机流出:OUTPUT --> POSTROUTING
转发:PREROUTING --> FORWARD --> POSTROUTING

处理流程.png

三、iptables规则

1、添加规则时的考量点:

(1) 要实现哪种功能:判断添加到哪个表上;
(2) 报文流经的路径:判断添加到哪个链上;

2、链的规则

链上的规则次序,即为检查的次序;因此,隐含一定的应用法则:

(1) 同类规则(访问同一应用),匹配范围小的放上面;
(2) 不同类的规则(访问不同应用),匹配到报文频率较大的放在上面;
(3) 将那些可由一条规则描述的多个规则合并起来;
(4) 设置默认策略;

3、匹配规则:

组成部分:根据规则匹配条件来尝试匹配报文,一旦匹配成功,就由规则定义的处理动作作出处理;

匹配条件:
基本匹配条件:内建
扩展匹配条件:由扩展模块定义;

4、处理动作:

基本处理动作:内建
扩展处理动作:由扩展模块定义;
自定义处理机制:自定义链

四、iptables命令:

高度模块化,由诸多扩展模块实现其检查条件或处理动作的定义;

/usr/lib64/xtables/
适用IPv6报文:libip6t_
适用IPv4报文:libipt_, libxt_

规则格式:
iptables [-t table] COMMAND chain [-m matchname [per-match-options]] -j targetname [per-target-options]

-t table:raw, mangle, nat, [filter]#表
rule-specification = [matches...] [target] #规则格式,matches匹配条件,target处理动作
match = -m matchname [per-match-options] #指明一个匹配模块 定义它的选项和值
target = -j targetname [per-target-options]#指明一个处理动作的扩展 并定义它的选项

  • 查询filter表有三个链
[root@bogon ~]# iptables -t filter -L#查询filter表有三个链
Chain INPUT (policy ACCEPT)    #指明那个表(默认法则+黑名单)
target     prot    opt    source      destination #(执行动作-端口-选择-原地址-目标地址)        
ACCEPT     all  --  anywhere   anywhere  #(允许-所有端口-任意地址-任意地址)
Chain FORWARD (policy ACCEPT)
Chain OUTPUT (policy ACCEPT)
  • 查询mangle表有五个链
[root@bogon ~]# iptables -t mangle -L#查询mangle表有五个链
Chain PREROUTING (policy ACCEPT)
Chain INPUT (policy ACCEPT)
Chain FORWARD (policy ACCEPT)
Chain OUTPUT (policy ACCEPT)
Chain POSTROUTING (policy ACCEPT)
  • 查询nat表有四个链
[root@bogon ~]# iptables -t nat -L#查询nat表有四个链
Chain PREROUTING (policy ACCEPT)
Chain INPUT (policy ACCEPT)
Chain OUTPUT (policy ACCEPT)
Chain POSTROUTING (policy ACCEPT)
  • 查询raw表有两个链
[root@bogon ~]# iptables -t raw -L#查询raw表有两个链
Chain PREROUTING (policy ACCEPT)
Chain OUTPUT (policy ACCEPT)

五、链管理:

  • 1、 -N:new, 自定义一条新的规则链;
[root@bogon ~]# iptables -N in_web_rules#只能调用內建链
  • 2、 -X: delete,删除自定义的规则链;
[root@bogon ~]# iptables -X in_web_rules#注意:仅能删除 用户自定义的 引用计数为0的 空的 链;
  • 3、 -P:Policy,设置默认策略;对filter表中的链而言,其默认策略有:

    ACCEPT:接受(內建)
    DROP:丢弃(內建)
    REJECT:拒绝(扩展)

[root@bogon ~]# iptables -P FORWARD DROP或ACCEPT#关闭或打开转发报文
[root@bogon ~]# iptables -vnL#查询状态
  • 4、 -E:重命名自定义链;引用计数不为0的自定义链不能够被重命名,也不能被删除;
[root@bogon ~]# iptables -E in_web_rules in_web

六、规则管理:

  • 1、-A:append,追加;
  • 2、-I:insert, 插入,要指明位置,省略时表示第一条;
  • 3、-D:delete,删除;

(1) 指明规则序号;
(2) 指明规则本身;

  • 4、-R:replace,替换指定链上的指定规则;

  • 5、-F:flush,清空指定的规则链;

[root@bogon ~]# iptables -F IN_public#清空指定的规则
  • 6、-Z:zero,置零;

iptables的每条规则都有两个计数器:
(1) 匹配到的报文的个数;
(2) 匹配到的所有报文的大小之和;

[root@bogon ~]# iptables -Z INPUT_ZONES 1#把这个链第一条规则置零
  • 7、查看:

-L:list, 列出指定鏈上的所有规则;
-n:numberic,以数字格式显示地址和端口号;
-v:verbose,详细信息;
-vv, -vvv
-x:exactly,显示计数器结果的精确值;
--line-numbers:显示规则的序号;

[root@bogon ~]# iptables -L -n --line-numbers #显示当前表链并编号
[root@bogon ~]# iptables -L -n --line-numbers -v#显示详细信息
[root@bogon ~]# iptables -vnL INPUT#显示INPUT信息
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,948评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,371评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,490评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,521评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,627评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,842评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,997评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,741评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,203评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,534评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,673评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,339评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,955评论 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,770评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,000评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,394评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,562评论 2 349

推荐阅读更多精彩内容