基于Linux系统的包过滤防火墙(2)
来源:asp之家 发布时间:2009-09-19 20:21:00
与ipfwadm和ipchains这样的Linux信息包过滤方案相比,Netfilter/iptables信息包过滤系统是最新的解决方案,使用户更易于理解其工作原理,也具有更为强大的功能。对于Linux系统管理员、网络管理员以及家庭用户(他们想要根据自己特定的需求来配置防火墙、在防火墙解决方案上节省费用和对IP信息包过滤具有完全控制权)来说,Netfilter/iptables系统十分理想,且更容易被使用。
1.2.2 新一代的Netfilter网络底层架构
Netfilter是一种内核中用于扩展各种网络服务的结构化底层构架。Netfilter的设计思想是生成一个模块结构使之能够比较容易的扩展。新的特性加入到内核中并不需要重新启动内核。这样,可以通过简单的构造一个内核模块来实现网络新特性的扩展。为底层的网络特性扩展带来了极大的便利,使更多从事网络底层研发的人员能够集中精力实现新的网络特性。
事实上,我们可以将Netfilter视为网络协议堆栈中可以让其它模块操作网络数据包的一系列“钩子”,在数据包通过协议堆栈的某些特定的点上,Netfilter框架允许一个模块转发或丢弃数据包、通过某种方式改变数据包、在用户空间(非内核模式)对包进行排队,当然也可以根本不去干涉它。
(1)Netfilter/iptables系统的含义。Linux2.4内核中Netfilter是新的用来实现防火墙的过滤器。iptables是用来指定Netfilter规则的用户工具。
Iptables只是一个管理内核包过滤的工具,它为用户配置防火墙规则提供了方便。
Iptables可以加入、插入或删除核心包过滤表格(链)中的规则。实际上真正来执行这些规则的netfilter及其相关模块(如iptables模块和nat模块等)。
因此,要使用Netfilter/iptables系统,必须首先有2.4版本内核的相关支持,同时必须安装iptables软件包。在RedHat9.0发行版中,此系统是默认的配置。
(2)使用Netfilter/iptables替代ipchains的原因:
→连接跟踪
→自动碎片重装
→改良的匹配规则
→增强的日志功能
→允许撕裂包中的任何信息
→用户队列允许用户空间对包进行编程
→支持内置包转发而舍弃了IPMASQANDM
(3)Netfilter/iptables系统的主要功能
→状态包过滤(连接跟踪)
→各种网络地址翻译
→灵活、易扩展的急智机制
→大量的增强型补丁包
(4)Netfilter/iptables的用途
→建立Internet防火墙和基于状态的包过滤
→用NAT和伪装(masquerading)共享上网
→用NAT实现透明代理
→用修改IP包头的ToS字段来实现更复杂的功能
→和tc+iprouter2配合使用可以实现QoS路由
(5)Netfilter/iptables系统的优点。Netfilter/iptables的最大优点是它可以配置有状态的防火墙,这是ipfwadm和ipchains等以前的工具都无法提供的一种重要功能。有状态的防火墙能够指定并记住为发送或接收信息包所建立的连接的状态。防火墙可以从信息包的连接跟踪状态获得该信息。在决定新的信息包过滤时,防火墙所使用的这些状态信息可以增加其效率和速度。有4种有效状态,名称分别为ESTABLISHED、INVALID、NEW和RELATED。其中:
→状态ESTABLISHED指出该信息包属于已建立的连接,该连接一直用于发送和接收信息包并且完全有效。
→状态INVALID指出该信息包与任何已知的流或连接都不相关联,它可能包含错误的数据或头。
→状态NEW意味着该项信息包已经或将启动新的连接,或者它与尚味用于发送和接收信息包的连接相关联。
→状态RELATED表示该信息包正在启动新连接,以及它与已建立的连接相关联。
Netfilter/iptables的另一个重要优点是,它使用户可以完全控制防火墙配置和信息包过滤。您可以定制自己的规则来懑足您的特定需求,从而只允许您想要的网络流量进入系统。
此外,Netfilter/iptables是免费的,这对于那些想要节省费用的人来说十分理想,它可以代替昂贵的防火墙解决方案。
总之,最新的Linux内核2.4.x具有Netfilter/iptables系统这种内置的IP信息包过滤工具,它使配置防火墙和信息包过滤变得便宜且方便。Netfilter/iptables系统使其用户可以完全控制防火墙配置和信息包过滤。它允许为防火墙建立可定制化的规则来控制信息包过滤。它还允许配置有状态的防火墙。
1.2.3 Netfilter/iptables的内核空间和用户空间
虽然netfilter/iptablesIP信息包过滤系统被称为单个实体,但它实际上由两个组件netfilter和iptables组成。
(1)内核空间。Netfilter组件也称为内核空间(KernelSpace),是内核的一部分,由一些“表”(table)组成,每个表由若干“链”组成,而每条链中可以有一条或数条规则(rule)。
(2)用户空间。Iptables组件是一种工具,也称为用户空间(userspace),它使插入、修改和除去信息包过滤表中的规则变得容易。
1.2.4 Netfilter/iptables过滤系统是如何工作的
Netfilter/iptablesIP信息包过滤系统是一种功能强大的工具,可用于添加、编辑和除去规则,这些规则是在做包过滤决定时所遵循的依据。这些规则存储在专用的信息包过滤表中,而这些表集成在Linux内核中。在信息包过滤表中,规则被分组在链(chain)中。
(1)用户使用iptables命令在用户空间设置过滤规则。通过使用用户空间可以构建用户自己的定制过滤规则,这些规则存储在内核空间的信息包过滤表中。这些规则具有目标,它们告诉内核对来自某些源、前往某些目的地或具有某些协议类型的信息包做些什么。如果某个信息包与规则匹配,那么使用目标ACCEPT允许该信息包通过。还可以使用目标DROP或REJECT来阻塞并杀死信息包。对于可对信息包执行的其它操作,还有许多其它目标。
根据规则所处理的信息包的类型,可以将规则分组在链中。
→处理入站信息包的规则被添加到INPUT链中。
→处理出站信息包的规则被添加到OUTPUT链中。
→处理正在转发的信息包的规则被添加到FORWARD链中。


猜你喜欢
- 一、规划说明:主机A: 双网卡192.168.1.7 --> mydomain.org主域名服务器192.168.10.7 -->
- # DedeCMS v5.3 归档插件+列表生成控制# jim.ma QQ:164186 jim.mail ~@~ 163.com程序中部分
- windows 2000的DNS服务器中有两种类型的搜索区域:“正向搜索区域”和&ldquo
- 步骤1、mount /dev/sr0 /media/2、安装所需要的软件安装并配置tftp服务yum install tftp tftp-s
- 百度目前收录新站正常收录应该在一个月左右,你要是传统的,建站,加内容,提交到搜索引擎那就太慢了,如果能吸引蜘蛛的注意力,那你的站就会很快收录
- 如何增加网站访问量?以下是你可以考虑采用29个方法。其中,你或许已经采用了一些,有的方法你可能忘了采用,还有一些是你从来没有听说过的。总之,
- 11月13日消息,据国外媒体报道,苹果周四表示,2010年将在全球新开40-50家专卖店,其中上海将新增2家。苹果表示,为了将苹果产品推广给
- 通常,你可以通过模块设置中的“菜单分配(Menu Assignment)”将模块分配给某些菜单项,以在它们对应的页面里显示。但有时你想将模块
- 1 各种搜索引擎的基本原理目录式搜索引擎是以人工方式或半自动方式搜集信息,由编辑员查看信息之后,人工形成信息摘要,并将信息置于事先确定的分类
- Godaddy主机用户在购买、建立、管理托管帐户时,创建了多个帐户来登陆与其托管网站有关的不同界面。每个帐户都是由一个用户名及密码来保护的。
- 搜索引擎优化是很多网站非常关心的,在搜索引擎中表现好,意味着能吸引大量的用户,网站的宣传也就容易了,业务也就好开展了。但在针对搜索引擎优化的
- 我们都知道外部链接可以提高网站权威、排名靠前,在搜索引擎面前,链接其实就代表投票,外部链接就是网站之间的互相投票,而内部链接则代表了网站内的
- V5MALL全线免费,再推网上商城炙不久之前相续在上海豫园商城、青岛特色街取得辉煌战果的上海威博网络技术有限公司,再其V5SHOP网店系统开
- 从2004年开始,我也加入了"站长"的行列.从来没有做出一个流量很大的网站,是坚持不够还是........也许太多的问题
- Windows 2000 Server安装成功后,一般会启动一个默认的Web站点,为整个网络提供Internet服务。在中小型局域网中,服务
- find 命令主要用于查找目录和文件,可以指定多种参数进行匹配。用法:find +查找路径 +命令参数
- 2009年10月12日,英特尔首席技术官贾斯汀接受搜狐IT采访时表示,英特尔致力于多领域的研究,其中包括云计算。贾斯汀表示:云计算是一个非常
- 很多人在选择虚拟主机(Virtual Hosting)或者VPS的时候因为备案,网络审查,外贸等原因都倾向于把主机放在美国。美国作为互联网的
- 1.Linux中如何表示硬盘,分区Linux内核读取光驱,硬盘等资源时均通过“设备文件”的形式进行,因此在linux系统中,将硬盘和分区表示
- IIS的相关设置:删除默认建立的站点的虚拟目录,停止默认web站点,删除对应的文件目录c:inetpub,配置所有站点的公共设置,设置好相关