- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式Linux下防火墙系统的实现
摘要:为了构建安全可靠的网络,对Linux内核防火墙结构Netfilter的实现机制进行了深入的研究和分析。在此基础上,结合嵌入式Linux系统开发流程,阐述了嵌入式Linux系统的Netfilter/IP tables防火墙功能。最后,给出了嵌入式Linux防火墙在实验室网络中的具体应用。
关键词:嵌入式Linux;防火墙;Netfilter;IP tables
中图法分类号:TP393文献标识码:A 文章编号:1009-3044(2009)35-9936-02
对于安全性要求较高的企业来说,基于软件的解决方案,例如个人防火墙以及防病毒扫描程序等,都不够强大,无法满足用户的要求。即使一个电子邮件传送过来的恶意脚本程序,都能轻松将这些防护措施屏蔽掉,甚至是那些运行在主机上的“友好”应用都可能为避免驱动程序的冲突而无意中关掉这些安全性防护软件,网络中的其他部分也将处攻击威胁之下。
安全性能是由硬件处理器来承担的,因此,边缘防火墙应用程序或网关能够为这类用户提供更优的入侵防范手段。但是这些设备的功能仅限于为网络边缘提供保护。一套嵌入式防火墙解决方案能将这一功能延伸到边缘防火墙的范围之外,并分布到网络的终端。边缘防火墙既能提供规避策略,也能提供入侵防范策略。安全性措施在PC系统上执行,但是却由嵌入式防火墙的硬件系统来实施,整个过程独立于主机系统之外。这一策略使企业网络几乎不受任何恶意代码或黑客攻击的威胁。即使攻击者完全通过了防火墙的防护并取得了运行防火墙主机的控制权,他们也将寸步难行,因为他们不能关闭掉嵌入式防火墙,或者以被入侵的主机为跳板进一步展开侵入网络其他领域的行动。[1-2]
1 嵌入式Linux防火墙实现机制分析
Linux内核防火墙的实现包括两个部分, 一个部分是内核中的Netfilter模块。它提供了一个抽象的、通用化框架, 是实现数据包过滤、处理、NAT等防火墙功能的核心。另一个部分就是用户空间的规则配置工具IP tables。Netfilter提供了一系列的表(table),每个表由若干链(chain) 组成, 而每条链中可以由一条或数条规则组成。在Netfilter中,使用内建的INPUT、OUTPUT和FORWARD过滤规则。入站数据包需要经过路由功能,由其决定是将数据包送到本地主机的输入规则链,还是转发规则链。Netfilter 数据包的流动如图1所示。
如果目的地址为本地的数据包被INPUT规则链的规则所接受,数据包就会在本地传送。如果目的地址为外地的数据包被FORWARD规则链的规则接受,数据包就会被送出相应的接口,经本地处理后的外出数据包被送到OUTPUT规则链。如果数据包被接受了,就会被送出相应的接口。于是,每个数据包被过滤一次。
用Netfilter建立防火墙使用IP tables管理命令,IP tables命令执行所建立的防火墙策略管理防火墙的行为,IP tables可以加入、插入或删除核心包过滤表格(链)中的规则。在iptables 防火墙中提供了三种策略规则表:Filter、NAT 和Mangle,分别实现包过滤,地址转换和处理包内容的功能。
2 Netfilter的实现原理
Netfilter为IPv4网络协议定义了5个钩子函数(hook),内核模块则可以对一个或多个这样的钩子函数进行注册挂接,使这些钩子函数在数据包流过协议栈时被调用。数据包经过钩子函数处理后,根据如下的返回值进行下一步的处理:
1) NF_DROP:丢弃此数据包,不再处理;
2) NF_ACCEPT:接受此数据包,进入下一步的处理;
3) NF_STOLEN:模块接管该数据包,不再继续传输;
4) NF_QUEUE:排队到用户空间,等待用户处理;
5) NF_REPEAT:再次调用该钩子函数处理。
Netfilter5个钩子函数的架构如图2所示。
1) NF_IP_PRE_ROUTING:刚刚进入网络层的数据包通过此点(刚刚进行完版本号、校验和等检测),源地址转换在此点进行;
2) NF_IP_LOCAL_IN:经路由查找后,送往本机的通过此检查点,IN PUT包过滤在此点进行;
3) NF_IP_FORWARD:要转发的包通过此检测点,FORWORD包过滤在此点进行;
4) NF_IP_LOCAL_OUT:本机进程发出的包通过此检测点,OUT PUT包过滤在此点进行;
5) NF_IP_POST_ROUTING:所有马上要通过网络设备出去的包通过此检测点,内置的目的地址转换功能(包括地址伪装)在此点进行。
由图2可以看出数据包经过Netfilter架
您可能关注的文档
最近下载
- 天津大学测控电路试卷.doc VIP
- 西 藏图考 清 黄沛翘(国立中央图书馆典藏).pdf
- 商标使用许可备案提前终止协议书8篇.docx VIP
- 2025年成都百万职工技能大赛(快递员)备赛试题库(含答案).docx
- 材料概论-第二章课件.pptx VIP
- 工业机器人编程与操作(FANUC)配套课件.ppt
- 第一单元 快乐的课堂 1~5 数的认识和加减法(单元测试基础卷)数学青岛版一年级上册(A3).pdf
- 2025广西公需答案01.pdf
- (高清版)DBJ50∕T-396-2021 山地城市地下工程防渗堵漏技术标准.pdf VIP
- Q TZW 22-2016_烧烤工具 企业标准.pdf VIP
文档评论(0)