Centos 5.3 环境下重新编译iptables,增加Layer 7,ipp2p,patch-o
一 相关内容介绍
CentOS(Community ENTerprise Operating System)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。两者的不同,在于CentOS并不包含封闭源代码软件。
iptables或netfilter(网络过滤器) 是一个用户态的防火墙应用软件,允许系统管理员可以调整设定X表(Xtables)提供相关的系统表格(目前主要是在 iptables/netfilter 底下)以及相关的“键”与“规则”来管理网络封包的流动与转送的动作。
patch-o-matic是iptables的扩展模块,默认安装的iptables并不安装这些模块,扩展模块功能强大,能够很好提高iptables的使用效率。
ipp2p,Layer 7都是iptables的扩展模块,通过它可以限制网络中的BT流量,多种下载工具以及其他一些异常网络行为。
二 下载相关程序
一般通过光盘安装的centos5.3 内核版本为2.6.18-128.el5 ,iptables版本为1.3.5,由于其默认安装的iptables没有我们需要的模块,即Layer 7 ipp2p,扩展模块patch-o-matic,我们需要通过编译系统内核,重新安装新内容的iptables。
1. kernel 2.6.18(官方版本)下载地址 http://www.kernel.org/pub/linux/kernel/v2.6/
kernel 2.6.18-128.el5(RedHat 修改的版本) http://ftp.redhat.com/pub/redhat/linux/enterprise/5Server/en/os/SRPMS/
注:kerne官网提供的下载格式为tar.gz 及tar.bz2 ,这是由于linux发行版本众多,打包压缩格式是标准的发布方式。kernel也有src.rpm的格式, 是RedHat发布的,主要是在官方发布的kernel基础上打了好多的补丁,主要可以提高他的一些性能,并增加了一些设备的驱动,其及其它一些功能。RedHat 的版本号 2.6.18-128.el5 表示是从kernel.org 官方公布的 2.4.18 版本的基础上修改而来的。-128 表示是第128次build。因为我们采用的操作系统是centos,其内核本是经红帽修改的,所以推荐下载 src.rpm版本的内核源码
2.iptables 1.3.5(官方版本)下载地址 http://www.netfilter.org/projects/iptables/downloads.html
3.Layer 7 仔细阅读 http://l7-filter.sourceforge.net/HOWTO-kernel
注:这里我们要下载两个文件,一个是L7-filter-kernel version ,http://sourceforge.net/projects/l7-filter/files/
一个是protocol definitions http://sourceforge.net/projects/l7-filter/files/
注意这两个文件的发布时间,下载接近的版本。在这里我们选择下载最新版本
netfilter-layer7-v2.22.tar.gz Mon Jul 13 2009 22:55
l7-protocols-2009-05-28.tar.gz Thu May 28 2009 21:48
4. ipp2p 下载
这里我们推荐安装CU网友修改的过的IPP2P 0.99.15 ,新增了对迅雷的限制。当然我们也可以去官网下载0.82版本 地址为 http://www.ipp2p.org/ 在这里我们选择下载最新版本。
5 patch-o-matic 下载地址 http://ftp.netfilter.org/pub/patch-o-matic-ng/snapshot/
在写这篇文章之前,我还没查清iptabels版本与 patch-o-matic 之间的对应关系 有兴趣的朋友可以研究一下
在这里我们下载 patch-o-matic-ng-20080214