Iptables添加模块

来源:百度文库 编辑:神马文学网 时间:2024/04/29 16:30:34
Iptables添加模块 Howto
For kernel 2.6
准备工作:
最新的patch-o-matic-ng,在下面的地址可以下载到最新的:
http://ftp.netfilter.org/pub/patch-o-matic-ng/
最新的iptables源代码:
http://www.netfilter.org
内核源代码:
http://www.kernel.org
L7-filter 补丁以及协议描述文件:
http://sourceforge.net/project/showfiles.php?group_id=80085
测试系统环境及软件版本:
GCC 3.4.2
Kernel 2.6.9
Iptbles 1.3.1
l7-protocols 2005-02-06
netfilter-layer7 v1.0
patch-o-matic-ng 20050309
安装步骤:
解压kernel到/usr/src: #tar –jxvf kernel-2.6.9.tar.bz2 –C /usr/src
使用上面类似的命令解压其余的文件到/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 Cd /source/temp/iptables-1.3.1
Patch –p1 ##这里是与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/documen ... tensions-HOWTO.html
platinum的HOWTO文档