iptables || apache moduleiptables限制连接数
这里介绍三种限制方式
1、限制局域网内每个用户的连接数为50
iptables -I FORWARD -p tcp -m connlimit –connlimit-above 50 -j REJECT
2、限制指定局域网用户XXX.XXX.XXX.XXX的连接数为50 (这里的XXX.XXX.XXX.XXX改成大家要限制的用户的IP)
iptables -I FORWARD -p tcp -s XXX.XXX.XXX.XXX -m connlimit –connlimit-above 50 -j REJECT
这里举个例子,比如要限制192.168.1.2这个用户的连接数为50
iptables -I FORWARD -p tcp -s 192.168.1.2 -m connlimit –connlimit-above 50 -j REJECT
3、限制除用户XXX.XXX.XXX.XXX以外的IP连接数为50 (也就是除了XXX.XXX.XXX.XXX用户不限制其它的都限,这个好吧,可以给自己开特权^_^)
iptables -I FORWARD -p tcp -s !XXX.XXX.XXX.XXX -m connlimit –connlimit-above 50 -j REJECT
这里也举个例子,比如要除了不限制192.168.1.2外,限制其它所有用户的连接数为50
iptables -I FORWARD -p tcp -s !192.168.1.2 -m connlimit –connlimit-above 50 -j REJECT
我的apache版本为httpd-2.2.0
限制IP连接数
下载地址:
tar -jxvf mod_limitipconn-0.23.tar.bz2
cd mod_limitipconn-0.23
make APXS=/apache/bin/apxs
make install APXS=/apache/bin/apxs
安装完需要修改httpd.conf
#mod_limitipconn 需 mod_status 的 ExtendedStatus On 支持
ExtendedStatus On #我是放在 LoadModule limitipconn_module 前面
虚拟主机配置
ServerAdmin
DocumentRoot /www/htdocs
ServerName example.com
ErrorLog logs/example.com-error
CustomLog logs/example.com-access_log combined
MaxConnPerIP 3
# NoIPLimit image/* #图片不做限制
OnlyIPLimit audio/mpeg video # 该限制只对视频和音频格式的文件
测试可以用讯雷下载大的文件,看看log 503就是拦截信息
120.42.x.x - - [14/May/2010:01:24:11 -0500] "GET /php-5.1.1.tar.gz HTTP/1.1" 503 323 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
阅读(1029) | 评论(0) | 转发(0) |