前提很明确,在中小型企业的内部网络中用iptables做一个简单的NAT服务器共享上网,由于网络流量的限制使用ipp2p模块禁止P2P下载保证日常工作的正常。
准备工作:安装好Slackware10.2,升级内核至2.6.1*,不保证在2.4内核下成功应用。
下载附件:iptables-1.3.3.tar.bz2http://www.netfilter.org/
l7-protocols-2006-04-09.tar.gzhttp://l7-filter.sourceforge.net/
netfilter-layer7-v2.1.tar.gzhttp://l7-filter.sourceforge.net/
ipp2p-0.8.0.tar.gzhttp://ipp2p.org/
HTML代码:
#wgethttp://ftp.netfilter.org/pub/iptables/iptables-1.3.5.tar.bz2#wgethttp://superb-west.dl.sourceforge.net/sourceforge/l7-filter/netfilter-layer7-v2.2.tar.gz#wgethttp://superb-west.dl.sourceforge.net/sourceforge/l7-filter/l7-protocols-2006-06-03.tar.gz#wgethttp://ipp2p.org/downloads/ipp2p-0.8.0.tar.gz#tarxvfiptables-1.3.5.tar.bz2-C/usr/src/#ln-s/usr/src/iptables-1.3.5#tarxvfl7-protocols-2006-06-03.tar.gz-C/usr/src/#tarxvfnetfilter-layer7-v2.2.tar.gz-C/usr/src/#tarxvfipp2p-0.8.0.tar.gz-C/usr/src/
然后开始给内核打上补丁,然后重新编译内核。
HTML代码:#cd/usr/src/linux#patch-p1<../netfilter-layer7-v2.2/kernel-2.6.13-2.6.16-layer7-2.2.patch#makemenuconfigNetworking--->Networkingoptions--->[*]Networkpacketfiltering(replacesipchains)--->IP:NetfilterConfiguration---><M>Layer7matchsupport(EXPERIMENTAL)[*]Layer7debuggingoutput#timemake–j2#makemodules_install#cparch/i386/boot/bzImage/boot/vmlinuz-2614#lilo#reboot
Reboot以后给iptables打上补丁。
HTML代码:#cd/usr/src/iptables#patch-p1</usr/src/netfilter-layer7-v2.2/iptables-layer7-2.2.patch#chmod755extensions/.layer7-test#exportKERNEL_DIR=/usr/src/linux#exportIPTABLES_DIR=/usr/src/iptables-1.3.5/#makePREFIX=/usr/local/iptables/LIBDIR=/lib/iptables/BINDIR=/sbin#makePREFIX=/usr/local/iptables/LIBDIR=/lib/iptables/BINDIR=/sbininstall
然后是安装l7-filter协议文件:
HTML代码:cd/usr/src/l7-protocols-2006-06-03/Makeinstall
只是CP了几个文件到/etc/里面,最后一步就是安装ipp2p了。
HTML代码:#cd/usr/src/ipp2p-0.8.0/#viMakefile:36ifeq($(IPTABLES_SRC),)IPTABLES_SRC=/usr/src/iptables-1.3.5endif#make##cplibipt_ipp2p.so/usr/local/lib/iptables/#insmodipt_ipp2p.o#depmod-a#cplibipt_ipp2p.so/lib/iptables/#insmodipt_ipp2p.ko#depmod-a
这个时候应该就OK了,
#iptables-mlayer7--help
#iptables-mipp2p--help