手机版
你好,游客 登录 注册 搜索
背景:
阅读新闻

Iptables—包过滤(网络层)防火墙

[日期:2013-08-08] 来源:Linux社区  作者:wenzhongxiang [字体: ]

一:Linux 防火墙基础:

Linux防火墙体系主要工作在网络层,针对TCP/IP数据包实施过滤和限制,属于典型的包过滤防火墙(也称网络层防火墙);

Linux防火墙体系基于内核编码实现,具有非常稳定的性能和高效率,因此被广泛的应用。

1.Netfilteriptables的区别:

  • Netfilter:指的是Linux内核中实现包过滤防火墙的内部结构,不以程序或文件的形式存在,属于“内核态”(KernelSpace,又称内核空间)的防火墙功能体系;

  • Iptables:指的是用来管理Linux防火墙的命令程序,通常位于/sbin/iptables,属于“用户态”(UserSpace,又称用户空间)的防火墙管理体系;

2.包过滤的工作层次:

主要是网络层,针对IP数据包;体现在对包内的IP地址、端口等信息的处理上;

3.Iptables 的表、链结构:

iptables作用:为包过滤机制的实现提供规则(或策略),通过各种不同的规则,告诉netfilter对来自某些源、前往某些目的或具有某些协议特征的数据包应该如何处理。

规则链

  • 规则的作用:对数据包进行过滤或处理

  • 链的作用:容纳各种防火墙规则

  • 链的分类依据:处理数据包的不同时机

默认包括5种规则链

  • INPUT:处理入站数据包

  • OUTPUT:处理出站数据包

  • FORWARD:处理转发数据包

  • POSTROUTING链:在进行路由选择后处理数据包(对数据链进行源地址修改转换)

  • PREROUTING链:在进行路由选择前处理数据包(做目标地址转换)

INPUTOUTPUT链主要用在“主机型防火墙”中,即主要针对服务器本机进行保护的防火墙;而FORWARDPREROUTINGPOSTROUTING链多用在“网络型防火墙”中。

规则

  • 表的作用:容纳各种规则链

  • 表的划分依据:防火墙规则的作用相似

默认包括4个规则表

  • raw表:确定是否对该数据包进行状态跟踪;对应iptable_raw,表内包含两个链:OUTPUTPREROUTING

  • mangle表:为数据包的TOS(服务类型)、TTL(生命周期)值,或者为数据包设置Mark标记,以实现流量整形、策略路由等高级应用。其对应iptable_mangle,表内包含五个链:PREROUTINGPOSTROUTINGINPUTOUTPUTFORWARD

  • nat表:修改数据包中的源、目标IP地址或端口;其对应的模块为iptable_nat,表内包括三个链:PREROUTINGPOSTROUTINGOUTPUT

  • filter表:确定是否放行该数据包(过滤);其对应的内核模块为iptable_filter,表内包含三个链:INPUTFORWARDOUTPUT

4.规则表之间的顺序:

rawàmangleànatàfilter

规则链之间的顺序

  • 入站:PREROUTINGàINPUT

  • 出站:OUTPUTàPOSTROUTING

  • 转发:PREROUTINGàFORWARDàPOSTROUTING

规则链内的匹配顺序

  • 按顺序依次检查,匹配即停止LOG策略例外

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

接下来请看第2页:http://www.linuxidc.com/Linux/2013-08/88423p2.htm

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款