文档章节

centos 6 上安装l7 filter尝试过滤xunlei

hiwill
 hiwill
发布于 2015/11/13 17:26
字数 672
阅读 800
收藏 3

平台:Centos 6 x86_64,默认内核版本2.6.34
1,准备
yum update -y
yum install -y ncurses-devel gcc make bc wget patch grub
2,下载相关安装包
wget http://download.clearfoundation.com/l7-filter/netfilter-layer7-v2.23.tar.gz
wget http://download.clearfoundation.com/l7-filter/l7-protocols-2009-05-28.tar.gz
wget http://www.netfilter.org/projects/iptables/files/iptables-1.4.21.tar.bz2
wget https://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.35.8.tar.gz
3,编译新内核
tar xvf linux-2.6.35.8.tar.gz -C /usr/src
tar xvf netfilter-layer7-v2.23.tar.gz
cd /usr/src
ln -s linux-2.6.35.8 linux
cd linux
patch -p1 < /root/netfilter-layer7-v2.23/kernel-2.6.35-layer7-2.23.patch
zcat /proc/config.gz > .config
make oldconfig   #自选提示的新功能和驱动
make menuconfig    #需要增加的编译模块
Networking support → Networking Options → Network packet filtering framework → Core Netfilter Configuration
<M>  Netfilter connection tracking support
<M>  "connlimit"  match support
<M>  "conntrack"  connection  match support
<M>  "iprange"  match support
<M>  "mac"  address  match support
<M>  "multiport" Multiple port match support
<M>  "state"  match support
<M>  "layer7" match support
<M>  "string" match support
<M>  "time"  match support
Networking support → Networking Options →Network packet filtering framework → IP Netfilter Configuration
<M> IPv4 connection tracking support (required for NAT)
<M> Full NAT
<M> MASQUERADE target support
<M> NETMAP target support                            
<M> REDIRECT target support
sed -i 's/# CONFIG_SYSFS_DEPRECATED_V2 is not set/CONFIG_SYSFS_DEPRECATED_V2=y/' .config
make CONFIG_DEBUG_SECTION_MISMATCH=y 
make -j3 bzImage
make -j3 modules
make
make modules_install
make install    #出现‘Cannot find LILO.’不用管它,系统没装也不会用LILO,而且已生成/boot/vmlinuz文件
mv /boot/vmlinuz /boot/vmlinuz-2.6.35 
mkinitrd -o initrd-2.6.35.img
cd /boot
mv initramfs-2.6.34-x86_64-linode14.img initrd-2.6.35.img (实际上还是用原系统镜像启动滴)
vi /boot/grub/menu.lst
default 0
timeout 5
title           Custom Compiled, kernel 2.6.35
root            (hd0)
kernel          /boot/vmlinuz-2.6.35 root=/dev/xvda ro quite
initrd          /boot/initrd-2.6.35.img
linode manager里对profile修改kernel为pv-grub-x86_64
重启后验证
uname -a
4,安装iptables
cp /etc/init.d/iptables /tmp/
cp /etc/sysconfig/iptables-config /tmp/
rpm -e iptables-ipv6 iptables --nodeps
tar xvf iptables-1.4.21.tar.bz2
cp /root/netfilter-layer7-v2.23/iptables-1.4.3forward-for-kernel-2.6.20forward/libxt_layer7.* /root/iptables-1.4.21/extensions/
cd iptables-1.4.21
./configure --prefix=/usr --with-ksource=/usr/src/linux   #提示Iptables modules that will not be built:  connlabel不知道是否有关系,先忽略
make 
make install
mv /tmp/iptables-config /etc/sysconfig/ 
mv /tmp/iptables /etc/rc.d/init.d/
vi /etc/init.d/iptables
修改路径如下
if [ ! -x /usr/sbin/$IPTABLES ]; then
    echo -n $"${IPTABLES}:/usr/sbin/$IPTABLES does not exist."; warning; echo
    exit 5
fi
在   for i in $tables; do
        echo -n "$i "
        case "$i" in
加入以下内容------------------
            security)
                $IPTABLES -t filter -P INPUT $policy \
                    && $IPTABLES -t filter -P OUTPUT $policy \
                    && $IPTABLES -t filter -P FORWARD $policy \
                    || let ret+=1
                ;;
分界线  ------------------
            raw)
service iptables restart
iptables -V  #查看版本是否正确
5,安装协议特征包:
tar xvf l7-protocols-2009-05-28.tar.gz 
cd l7-protocols-2009-05-28
make install 
可查看支持的部分协议:
ls protocols/
6,设置iptables规则
iptables -t mangle -I POSTROUTING -m layer7 --l7proto xunlei -j DROP
iptables -t mangle -I PREROUTING -m layer7 --l7proto edonkey -j DROP
iptables -t mangle -I PREROUTING -m layer7 --l7proto bittorrent -j DROP
7,经过测试也不行。找到一个网友的话说:禁止是没有用的,而人类是灵动的,总有人会绕过或者突破禁忌!
看来只有限速了。。

© 著作权归作者所有

共有 人打赏支持
hiwill
粉丝 12
博文 126
码字总数 82589
作品 0
朝阳
私信 提问
debian 6上安装l7 filter在应用层禁用xunlei

平台:debian 6 x86_64,在linode里选择内核版本2.6.28,l7 filter官网说改版本内核可用 1,准备环境 apt-get update apt-get upgrade -y apt-get install -y build-essential libncurses5-d......

hiwill
2015/11/13
0
0
Iptables+layer7+squid的应用

Iptables+layer7+squid的应用 一、iptables+layer7+squid简介 (1)Iptables是网络层防火墙 ,主要用于网络层、传输层的过滤,对应用层的过滤较少,但是支持的应用比较多,如NAT转换 (2)L...

天涯悠客
2014/07/08
0
0
Netfilter/Iptables Layer7 应用层过滤策略

Netfilter/Iptables Layer7 应用层过滤策略 Netfilter/Iptables 作为一个典型的包过滤防火墙体系,对于网络层,传输层的数据包过滤具有非常优秀的性能和效率,然而,对于一些面向局域网上网用...

crushlinux
2014/12/11
0
0
iptables模块添加--七层过滤、防CC、DDOS

#!/bin/bash # BY kerryhu # QQ:263205768 # MAIL:king_819@163.com # BLOG:http://kerry.blog.51cto.com IPT=/sbin/iptables /* 当前系统版本centos5.3,内核版本2.6.18-128.el5,对现有系统......

刘赤龙
2010/06/08
0
0
iptables从入门到精通

一.主要知识点: Iptables表链结构 数据包过滤流程 Iptables书写规则 Iptables条件匹配 Iptables数据包控制 Iptables七层过滤 Iptables脚本 二.具体的知识点介绍 1. Iptables表链结构 1)默...

gehailong
2011/07/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

centos7重置密码、单用户模式、救援模式、ls命令、chmod命令

在工作当中如果我们错误的配置了文件使服务器不能正常启动或者忘记密码不能登录系统,如何解决这些问题呢?重装系统是可以实现的,但是往往不能轻易重装系统的,下面用忘记密码作为例子讲解如...

李超小牛子
今天
3
0
Python如何开发桌面应用程序?Python基础教程,第十三讲,图形界面

当使用桌面应用程序的时候,有没有那么一瞬间,想学习一下桌面应用程序开发?行业内专业的桌面应用程序开发一般是C++,C#来做,Java开发的也有,但是比较少。本节课会介绍Python的GUI(图形用...

程序员补给栈
今天
5
0
kafka在的使用

一、基本概念 介绍 Kafka是一个分布式的、可分区的、可复制的消息系统。它提供了普通消息系统的功能,但具有自己独特的设计。 这个独特的设计是什么样的呢? 首先让我们看几个基本的消息系统...

狼王黄师傅
今天
3
0
Android JNI总结

0x01 JNI介绍 JNI是Java Native Interface的缩写,JNI不是Android专有的东西,它是从Java继承而来,但是在Android中,JNI的作用和重要性大大增强。 JNI在Android中起着连接Java和C/C++层的作...

天王盖地虎626
昨天
3
0
大数据教程(11.8)Hive1.2.2简介&初体验

上一篇文章分析了Hive1.2.2的安装,本节博主将分享Hive的体验&Hive服务端和客户端的使用方法。 一、Hive与hadoop直接的关系 Hive利用HDFS存储数据,利用MapReduce查询数据。 二、Hive与传统数...

em_aaron
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部