您当前位置:首页 > 资讯中心 > 技术文章

Linux防火墙对P2P流量的限制

  看到一则报道说尽管某宽带公司现有技术能容纳的网络用户容量为400至600万用户,可是目前,在容纳了45万用户的情况下,网络已拥挤不堪,时常出现断网情况,一到上网高峰,网速就会急剧下降。为何网络会如此拥挤不堪?这是因为自从出现诸如电驴、Kazaa、BT等P2P软件之后,海量的数据文件(如大容量文件交换、视频文件下载等)逐渐占据了大部分的网络带宽。P2P这一新应用给用户带来了前所未有的方便和丰富的资源,但同时也引发了网络带宽和安全问题。

怎么在发挥P2P强大功能的情况下对其进行一些必要的限制呢?本文将介绍在Linux中怎么利用netfilter/iptables实现对P2P应用流量的限制。

升级内核

由于在公研发布的Linux内核文件中,有关iptables的各种参数里没有关于P2P属性的参数,所以必须通过升级Linux内核和iptables来打上这个补丁,使其支持P2P属性设置。

在具体操作之前,先要了解一下升级内核补丁需要的一些相关软件:linux-2.4.20-8.tar.gz、patch-o-matic- 20040609.tar.bz2、iptables-1.2.8.tar.bz2、iptables-p2p-0.3.0a.tar.gz和ipp2p -0.5c.tar.gz。

这里的测试环境为Red Hat 9.0,内核为2.4.20-8。由于2.4.*是个稳定的内核,因此不能把当前研发的一些新功能提交到主内核中去,而只能首先在patch-o- matic中测试,然后打补丁到内核中。在CVS中能找到较新的patch-o-matic包?Patch-o-matic- 20040609.tar.bz2。 bbs.bitsCN.com

有了内核支持后,还需要iptables支持,其中iptables-p2p-0.3.0a.tar.gz为netfilter/iptables组织研发的专门支持P2P的iptables扩展软件包;ipp2p-0.5c.tar.gz为Eicke Friedrich研发的一个支持P2P的iptables扩展包。这两个扩展包各有特色,后面将会分别介绍。

装载模块

首先在/usr/src下解压软件包:
#bzip2 -d patch-o-matic-20040609.tar.bz2 bbs.bitsCN.com 

 

生成patch-o-matic-20040609.tar.out。


#tar xvf patch-o-matic-20040609.tar.out 中国网管联盟 

 

生成补丁目录patch-o-matic-20040609。Red Hat 9.0中默认的内核目录为/usr/src/linux-2.4。进入补丁目录/usr/src/patch-o-matic-20040609,由于支持P2P协议控制选项需要CONNMARK模块,该模块在extra子目录下,因此需要运行如下命令来升级内核补丁。


#KERNEL_DIR=/usr/src/linux-2.4 ./runme extra bbs.bitsCN.com 

 

运行该命令后会出现一个模块选择界面,界面有两个区域,一个给出相关的模块名、模块功能、用法和语法实例;另一个给出各种选项,如N/y/b/r.../q/?,其中较早个为大写字母,表示缺省选项,n表示下一个模块,y表示确定,b表示上一个模块,q表示退出。

首先应该确定当前的模块是否需要,不必就按“N”键后回车,继续显示下一个模块的相关信息。当出现需要的模块时,按“Y”键确认,同时应该将里面的相关语法实例抄录下来以备用。选择完所有需要的模块后,按“Q”键退出。

编译内核

进入内核文件所在目录/usr/src/linux-2.4,开始编译内核:


#make mrproper
#make xconfig(或#make menuconfig) bitsCN.Com 

 

注意,在设置选项中必须选择Networking options→IP:Netfilter Configuration→Connection mark tracking support和CONNMARK target support两个选项。确保关键文件在正确位置:


#make dep

编译大内核:
<CENTER><ccid_nobr>
<table width="400" border="1" cellspacing="0" cellpadding="2"
 bordercolorlight = "black" bordercolordark = "#FFFFFF" align="center">
<tr>
    <td bgcolor="e6e6e6" class="code" style="font-size:9pt">
    <pre><ccid_code>
#make bzImage bitscn.com 

 

编译选择的模块:


#make modules bitsCN.Com 

 

将编译后的模块转移到系统标准位置:


#make modules_install www.bitsCN.com 

 

让系统自动修改启动设置文件grub.conf:


#make install www_bitscn_com 

 

重新启动系统,选择Red Hat Linux(2.4.20-8custom)选项,则启动了新编译的内核。

升级iptables

安装iptables-1.2.8

首先解压iptables-1.2.8.tar.bz2文件:


#bzip2 -d iptables-1.2.8.tar.bz2
#tar xvf iptables-1.2.8.tar.out DL.bitsCN.com网管软件下载 

 

编译iptables-1.2.8:


#make KERNEL_DIR=/usr/src/linux-2.4
#make install KERNEL_DIR=/usr/src/linux-2.4
#make install-devel 中国.网管联盟 

 

拷贝可执行文件到相应目录:


#cp iptables iptables-save iptables-restore /sbin bitsCN.Com 

 

安装iptables-p2p软件

首先解压iptables-p2p-0.3.0a.tar.gz:


#tar zxvf iptables-p2p-0.3.0a.tar.gz
#cd iptables-p2p-0.3.0a bitscn.com 

 

拷贝iptables-1.2.8的头文件到适当的目录:


#cp -a /usr/src/iptables-1.2.8/include/* /usr/include 中国.网管联盟 

 

运行“make”编译iptables-p2p,并拷贝相关文件到相应的目录:


#make
#cp kernel/ipt_p2p.o /lib/modules/2.4.20-8custom/kernel/net/ipv4/netfilter/
#cp iptables/libipt_p2p.so /lib/iptables/ 中国.网管联盟 

 

安装ipp2p软件

首先修改Makefile文件中的源目录、内核目录和netfilter版本号,将以下内容:


IKERNEL = -I/usr/src/linux/include
IUSER = -I/usr/src/iptables-1.2.7a/include
NETFILTER_VERSION = \"1.2.7a\" 中国.网管联盟 

 

改为:


IKERNEL = -I/usr/src/linux-2.4/include
IUSER = -I/usr/src/iptables-1.2.8/include
NETFILTER_VERSION = \"1.2.8\" 中国网管联盟 

 

编译软件,并拷贝库文件到相应的目录:


#make
#cp libipt_ipp2p.so /lib/iptables bitsCN.Com 

 

装入模块:


#insmod ipt_ipp2p 中国网管联盟 

bitsCN.Com

作者:Admin - 发布时间:2009-02-26 - 点击量:3800
公司简介:大势至公司是国内较早的企业网管软件提供商,可以为企事业单位提供整体的企业网络管理方案和企业网络管理平台,通过全系列的公司监控员工电脑软件教你如何控制员工上网、如何控制局域网内电脑上网以及如何保护电脑文件安全等。公司核心产品“聚生网管系统”是一款专门的公司网管必备软件、查看网络流量软件、网络流量监控软件和办公室电脑监控软件;“网络特警”则是一款专门的网络流量监控设备、上网行为管理服务器、网络行为管理设备,可以实现更为强大的局域网网络行为管理;大势至USB接口禁用软件则是一款专门的数据防泄密产品、屏蔽U盘软件、电脑USB端口禁用软件,可以严防通过一切途径泄露电脑文件,保护单位无形资产和商业机密安全;大势至共享文件夹管理软件则是一款专门的共享文件权限设置软件和共享文件设置密码软件,全面保护共享文件安全;大势至共享文件审计系统则是一款专门的服务器共享文件夹设置软件、服务器共享文件访问日志记录软件,可以详细记录局域网用户访问共享文件的行为,更好地管理共享文件的安全;大势至局域网网络准入控制系统则是一款专门防止未经授权的电脑接入公司局域网的行为,防止外来电脑访问局域网共享文件、防止蹭网以及绑定IP和MAC地址,保护网络安全;大势至FTP服务器日志记录软件则是一款专门记录局域网用户访问FTP服务器日志的软件,可以有效保护FTP服务器文件安全。
联系我们