2.6内核下不编译内核给iptables加模块

 


1,安装kernel源码

[root@jiecho]# yum install kernel-source

2,iptables-1.3.3.tar.bz2和patch-o-matic-ng-20050810.tar.bz2并解包,为了方便,我们都放在/usr/src下,

并把kernel和iptables做符号链接.

[root@jiecho]# cd /usr/src
[root@jiecho]# wget ftp://ftp.be.netfilter.org/pub/netf...s-1.3.3.tar.bz2
[root@jiecho]# wget ftp://ftp.be.netfilter.org/pub/netf...0050810.tar.bz2
[root@jiecho]# tar -jxvf iptables-1.3.3.tar.bz2
[root@jiecho]# tar -jxvf patch-o-matic-ng-20050810.tar.bz2
[root@jiecho]# ln -s linux-2.6.5-1.358 linux
[root@jiecho]# ln -s iptables-1.3.3 iptables

3,给netfilter打补丁,选择你要的模块,为了测试我就选择了ipp2p和time

[root@jiecho]# cd /usr/src/linux
[root@jiecho]# make mrproper
[root@jiecho]# make menuconfig

什么不做,保存退出,然后把Makefile改一下

[root@jiecho]# vi Makefile

把EXTRAVERSION = -1.358custom更改为EXTRAVERSION = -1.358

保持跟uname -a 的版本一致

[root@jiecho]# cd /usr/src/patch-o-matic-ng-20050810
[root@jiecho]# ./runme ipp2p
[root@jiecho]# ./runme time

因为事先做好了符号链接,等问你kernel和iptables的位置的时候直接回车就行,

提示你是否添加ipp2p和time模块是就y确定,至此,netfilter的补丁打完了,假如你需要别的模块可以根据需要加上.

4,编译kernel的modules

[root@jiecho]# cd /usr/src/linux
[root@jiecho]# make menuconfig
在Device Drivers->Networking support->Networking options->Network packet filtering

->IP: Netfilter Configuration中把下面的两项M选中.

TIME match support
IPP2P match support

然后保存退出

5,编译安装模块

下面就是最重要的步骤了,因为我们的原则是节省时间,不重新编译内核,而只编译其中的模块,

这点2.4的内核跟2.6的内核有所不同,郁闷了我一整天,2.4内核的模块是以.o形式的,而2.6内核是以.ko形式的,

这有个改变的方法,参考:http://blog.chinaunix.net/article.p...742 use the glibc headers instead!

我google了半天也没有找到是什么原因,就自己动手解决

[root@jiecho]# vi /usr/src/linux/include/linux/config.h把下面的三行注释掉

//#ifndef __KERNEL__
//#error including kernel header in userspace; use the glibc headers instead!
//#endif

然后重新编译安装

make KERNEL_DIR=/usr/src/linux
make install KERNEL_DIR=/usr/src/linux

完成安装以后测试一下

代码:

[root@jiecho]# iptables -V
[root@jiecho]# modprobe ipt_time
[root@jiecho]# modprobe ipt_ipp2p
[root@jiecho]# lsmod
ipt_time2432 0
ipt_ipp2p  7552 0
ipt_REJECT 4736 1
ipt_state  1536 1
ip_conntrack  24968 1 ipt_state
iptable_filter 2048 1
ip_tables 13440 5 ipt_time,ipt_ipp2p,ipt_REJECT,ipt_state,iptable_filter
battery 6924 0
ipv6 184288 10
3c59x 30376 0
binfmt_misc 7176 1
nls_utf81536 4
ntfs  81516 4
dm_mod 33184 0
uhci_hcd  23708 0
button 4504 0
asus_acpi  8472 0
ac 3340 0
ext3 102376 4
jbd40216 1 ext3

测试iptables

[root@jiecho]# iptables -A FORWARD -m ipp2p --edk --kazaa --bit -j DROP
[root@jiecho]# iptables -A INPUT -m time --timestart 8:00 --timestop 18:00 --days Mon,Tue,Wed,Thu,Fri
[root@jiecho]# iptalbes -L
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值