当前位置:操作系统 > Unix/Linux >>

iptables添加模块(forkernel2.6)

感谢platinum的文档;

  下面是我在Linux上的试验步骤,可能不那么准确。

  =========

  Iptables添加模块 Howto

  For kernel 2.6

  准备工作:

  1, 最新的patch-o-matic-ng,在下面的地址可以下载到最新的:

  http://ftp.netfilter.org/pub/patch-o-matic-ng/

  2, 最新的iptables源代码:

  http://www.netfilter.org

  3, 内核源代码:

  http://www.kernel.org

  4, L7-filter 补丁以及协议描述文件:

  http://sourceforge.net/project/showfiles.php?group_id=80085

  测试系统环境及软件版本:

  1, GCC 3.4.2

  2, Kernel 2.6.9

  3, Iptbles 1.3.1

  4, l7-protocols 2005-02-06

  5, netfilter-layer7 v1.0

  6, patch-o-matic-ng 20050309

  安装步骤:

  1, 解压kernel到/usr/src: #tar –jxvf kernel-2.6.9.tar.bz2 –C /usr/src

  2, 使用上面类似的命令解压其余的文件到/source/temp下:

  为kernel打补丁:

  Cd /usr/src/linux-2.6.9

  Make menuconfig(注意生成.config)

  cd /source/temp/patch-o-matic-ng-20050309

  KERNEL_DIR=/usr/src/linux-2.6.9 IPTABLES_DIR=/source/temp/iptables-1.3.1 ./runme time

  (注: runme后跟需要添加的模块,不要使用base或其它的命令,会导致后面iptables不能编译通过。我编译的模块有:time ipv4options psd mport ipp2p quota。很遗憾的是string模块不支持kernel-2.6版本)

  ##这里是与l7-filter有关的(你可以不做这里的):

  Cd /usr/src/linux-2.6.9

  Patch –p1 </source/temp/netfilter-layer7-v1.0/kernel-2.6-layer7-1.0.patch

  Cd /source/temp/iptables-1.3.1

  Patch –p1 </source/temp/netfilter-layer7-v1.0/iptables-layer7-1.0.patch

  ##这里是与l7-filter有关的结束

  Cd /usr/src/linux-2.6.9

  Make menuconfig (在这里选择你添加的netfilter的模块)

  Make

  Make modules_install

  修改grub或lilo使用新的kernel来启动Linux

  编译iptables:

  Cd /source/temp/iptables-1.3.1

  Export KERNEL_DIR=/usr/src/linux-2.6.9

  Export IPTABLES_DIR=/source/temp/iptables-1.3.1

  make PREFIX=/usr LIBDIR=/lib BINDIR=/sbin &&

  make PREFIX=/usr LIBDIR=/lib BINDIR=/sbin install

  安装l7-filter协议文件:

  Cd /source/temp/l7-protocols-2005-02-06

  Make install

  测试是否成功:

  Iptables –A OUTPUT –p tcp –m mport –sports 21:23,80 –j DROP

  等等测试命令,如果你需要看帮助:

  Iptables –m ip2p2 –help

  参考文档:

  http://l7-filter.sourceforge.net/L7-HOWTO-Netfilter

  http://www.netfilter.org/documentation/HOWTO//netfilter-extensions-HOWTO.html

  platinum的HOWTO文档 本文来自:http://www.xiaoyaxiao.com/5348.html
发表您的意见和建议!
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,