WEB开发网      濠电娀娼ч崐濠氬疾椤愶附鍋熸い鏍ㄧ〒闂勫嫰鏌﹀Ο渚Ц闁诲氦顕ч湁婵犲﹤楠告禍鍓х磼鏉堛劌绗氶柟宄版嚇閹晠宕归銈嗘濠电偞鍨堕幐鎾磻閹捐秮褰掓偐閻戞﹩妫勯梺鎼炲妼鐎涒晝绮嬪澶樻晝闁挎繂鏌婇敃鍌涚厵閻庢稒锚閻忥絾绻濇繝鍐ㄧ伌闁诡垰鍟村畷鐔碱敂閸♀晙绱樺┑鐐差嚟婵儳螞閸曨剚鍙忛柍鍝勬噹缁€澶嬬箾閹存繄锛嶆鐐灲閹綊宕惰濡插鏌涢妸銉ヮ劉缂佸倸绉归弫鎾绘晸閿燂拷 ---闂備焦瀵уú鈺呭箯閿燂拷
开发学院网络安全防火墙 实现Linux网络防火墙 阅读

实现Linux网络防火墙

 2006-07-04 12:35:49 来源:WEB开发网 闂備線娼уΛ鎾箯閿燂拷闂備礁鎲¢崹鐢垫崲閹扮増鍎嶆い鎺戝€甸崑鎾斥槈濞嗗秳娌紓鍌氱▌閹凤拷濠电姭鎷冮崨顓濈捕闂侀潧娲ゅú銊╁焵椤掍胶鈯曢柕鍥╁仧缁辩偤鏁撻敓锟�闂備線娼уΛ鎾箯閿燂拷  闂備胶枪缁绘鈻嶉弴銏犳瀬闁绘劕鎼痪褔鏌曟繝蹇曠窗闁煎壊浜滈—鍐偓锝庡墮娴犙勭箾閸喎鐏ユい鏇樺劦椤㈡瑩鎮℃惔銇帮拷
核心提示: IptablesIptables是一个管理内核包过滤的工具,可以加入、插入或删除核心包过滤表格中的规则,实现Linux网络防火墙(5),实际上真正来执行这些过滤规则的是Netfilter ,Netfilter是Linux核心中一个通用架构,则继续检查下一条规则,如果该数据包不符合该链中任一

Iptables

Iptables是一个管理内核包过滤的工具,可以加入、插入或删除核心包过滤表格中的规则。实际上真正来执行这些过滤规则的是Netfilter 。Netfilter是Linux核心中一个通用架构,它提供一系列的表(tables),每个表由若干链(chains)组成,而每条链中可以由一条或数条规则(rule)组成。

图 Netfilter的总体结构

相对于2.2内核提供的IP链来说,2.4内核提供了更好的灵活性和可扩展性。2.4内核中的防火墙并不是2.2内核的简单增强,而是一次完全的重新实现,2.4内核提供的防火墙软件包在结构上发生了非常大的变化。与IP链相比,2.4内核提供的Iptables的检测点变成了5个,并在每个检测点上登记需要处理的函数,登记通过nf-register-hook()函数保存在全局变量nf-hook中来实现。当包到达此检测点时,实现登记的函数按照事先定义好的优先级别来执行。相对于2.2内核提供的IP链来说,Iptables实现的不仅仅是包过滤功能,而是通过Netfilter实现一整套框架结构,在这个框架之上实现包过滤、NAT等模块功能,从而提供更好的可扩展性和灵活性。

系统缺省的表为filter,该表包含了INPUT链(输入链)、FORWARD链(转发链)和OUTPUT链(输出链)。每一条链中可以定义一条或数条规则,每一条规则都以如下格式定义:条件/处理方式。

当一个数据包到达一个链时,系统就会从第一条规则开始检查,看是否符合该规则所定义的条件。如果满足,系统将根据该条规则所定义的方法处理该数据包;如果不满足,则继续检查下一条规则。如果该数据包不符合该链中任一条规则,系统则会根据该链预先定义的策略(policy)来处理该数据包。

上一页  1 2 3 4 5 6  下一页

Tags:实现 Linux 网络

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接