庞大资源库的计算机教程网站!
设为首页
加入收藏
总编信箱
投稿或申请专栏请先 [登 陆]
首页 操作系统 程序设计 图形图像 媒体动画 机械电子 WEB开发 数 据 库 办公系列 路由技术 网络原理 网络应用
认证考试 安全技术
首页>操作系统>Linux>系统安全>正文
资料搜索
Google搜索
Google
返回上级列表

推荐文章

快速保存网页中所有图片的方法
Windows中让光驱巧妙“隐身”技
防范非法用户入侵Win 2000/XP系
两款比较典型的ASP木马防范方法
有关表格边框的css语法整理
Windows XP中可以被禁用的服务
SQL Server导出导入数据方法
Javascript所有对象的属性的获
网页(HTML)中的特殊字符
与篮球共舞,尽显模式本色
QQ病毒的手工清除方法
Photoshop为极品美女打造性感睫
天衣无缝:IIS与PHP水火也相容
SQL Server存储过程编写和优化

解读Linux2.4的netfilter功能框架(中)

 作者:本站收集   日期:2005-4-12
字号选择〖 〗/ 双击滚屏 单击停止   
   下面的内容要求具有对TCP/IP,路由,防火墙及包过滤的基本概念的了解。

   在第一部分已经解释过,filter表和三个钩子进行了挂接,因此提供了三条链进行数据过滤。所有来自于网络,并且发给本机的数据报会遍历INPUT规则链。所有被转发的数据报将仅仅遍历FORWARD规则链。最后,本地发出的数据报将遍历OUTPUT链。

向规则链中插入规则
   Linux2.4提供了一个简洁强大的工具"iptables"来插入/删除/修改规则链中的规则。这里并不对iptalbes进行详细的介绍,而只是讨论它的主要的一些特性:

   该命令实现对所有的ip表进行处理,当前包括filter,nat及mangle三个表格,及以后扩展的表模块。

   该命令支持插件来支持新的匹配参数和目标动作。因此对netfilter的任何扩展都非常的简单。仅仅需要编写一个完成实际目标动作处理的模块和iptalbes插件(动态连接库)来添加所需要的一切。

   它有两个实现:iptables(IPV4)及ip6tables。两者都基于相同的库和基本上相同的代码。

基本的iptables命令
   一个iptables命令基本上包含如下五部分:希望工作在哪个表上、希望使用该表的哪个链、进行的操作(插入,添加,删除,修改)、对特定规则的目标动作、匹配数据报条件。

   基本的语法为:

   iptables -t table -Operation chain -j target match(es)

   例如希望添加一个规则,允许所有从任何地方到本地smtp端口的连接:

   iptables -t filter -A INPUT -j ACCEPT -p tcp --dport smtp

   当然,还有其他的对规则进行操作的命令如:清空链表,设置链缺省策略,添加一个用户自定义的链....

   基本操作:

   -A   在链尾添加一条规则;

   -I   插入规则;

   -D   删除规则

   -R   替代一条规则;

   -L   列出规则。

   基本目标动作,适用于所有的链:

   ACCEPT 接收该数据报;

   DROP 丢弃该数据报;

   QUEUE 排队该数据报到用户空间;

   RETURN 返回到前面调用的链;

   foobar 用户自定义链。

   基本匹配条件,适用于所有的链:

   -p 指定协议(tcp/icmp/udp/...);

   -s 源地址(ip address/masklen);

   -d 目的地址(ip address/masklen);

   -i 数据报输入接口;

   -o 数据报输出接口;

   除了基本的操作,匹配和目标还具有各种扩展。

iptables的数据报过滤匹配条件扩展
   有各种各样的数据包选择匹配条件扩展用于数据包过滤。这里仅仅简单的说明来让你感受扩展匹配的强大之处。

   这些匹配扩展给了我们强大的数据报匹配手段:

   TCP匹配扩展能匹配源端口,目的端口,及tcp标记的任意组合,tcp选项等;

   UPD匹配扩展能匹配源端口和目的端口;

   ICMP匹配扩展能匹配ICMP类型;

   MAC匹配扩展能匹配接收到的数据的mac地址;

   MARK匹配扩展能匹配nfmark;

   OWNE匹配扩展(仅仅应用于本地产生的数据报)来匹配用户ID,组ID,进程ID及会话ID;

   LIMIT扩展匹配用来匹配特定时间段内的数据报限制。这个扩展匹配对于限制dos攻击数据流非常有用;

   STATE匹配扩展用来匹配特定状态下的数据报(由连接跟踪子系统来决定状态),可能的状态包括:

   INVALID (不匹配于任何连接);

   ESTABLISHED (属于某个已经建立的链接的数据报);

   NEW (建立连接的数据报);

   RELATED (和某个已经建立的连接有一定相关的数据报,例如一个ICMP错误消息或ftp数据连接);

   TOS匹配扩展用来匹配IP头的TOS字段的值。

iptables的数据报过滤目标动作扩展
   LOG  将匹配的数据报传递给syslog()进行记录

   ULOG 将匹配的数据适用用户空间的log进程进行记录

   REJECT 不仅仅丢弃数据报,同时返回给发送者一个可配置的错误信息

   MIRROR 互换源和目的地址以后重新传输该数据报
上一篇:解读Linux2.4的netfilter功能框架(上)    下一篇:解读Linux2.4的netfilter功能框架(下)  
[发送给好友]  [关闭窗口]  [返回顶部]   转载请注明来源:www.it00.com   
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
责任编辑: 原点 投稿作者: 本站收集
信息来源: 网络 录入时间: 2005-4-12
关于我们 - 广告服务 - 版权申明 - 网站地图 - 联系方式 - 总编信箱 - 会员投稿