找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 107|回复: 16

如何加快csf防火墙block ip的速度(送自己写的防CC脚本)

[复制链接]

17

主题

67

回帖

205

积分

中级会员

积分
205
发表于 2011-12-3 03:45:50 | 显示全部楼层 |阅读模式
我的服务器每天大概会被1000个左右的并发IP CC
我通过日志大概分析出来一些非法的请求,但是在使用CSF禁止ip的时候,由于iptables要锁表,导致特别特别慢。。求快速加入iptables的方法...

下面是封大量连接没有referer来源的脚本,自己写的比较2。。见谅..

#!/bin/bash
ips=`tail -100 /data/logs/aaa.com.log | grep -E ' GET ' | awk '{if ($11=="-"){print $1}}' |sort |uniq -c | awk '{if ($1 > 1 ){ print $2 }}'`

cache=`tail -1000 /data/logs/aaa.com.log`;
#printf "$cache";
#echo "$cache";
for ip in $ips;do
        #echo $ip;
        ipcache=`echo "$cache" | grep -E "^$ip"`;
        posttest=`echo "$ipcache" | grep -E ' POST ' | wc -l`;
        if [ $posttest -gt 0 ]
        then
                echo "$ip POST detected,continue";
                continue;
        fi
        match=`echo "$ipcache" |grep -E ' GET ' | awk '{if ($11 == "-") {print $11}}' | wc -l`;

        if [ $match -gt 10 ]
        then
                FLAG=0;
                grep $ip /etc/csf/csf.tempban > /dev/null
                if [ $? -ne $FLAG ]
                then
                        /usr/sbin/csf -td $ip 43200
                        echo "block $ip, match $match";
                else
                        echo "already block $ip, match $match" ;
                fi

        fi
        #echo $match;
        #echo "$cache"| grep $ip >> /data/logs/ban/200.log;
done
~
回复

使用道具 举报

71

主题

3904

回帖

8079

积分

论坛元老

积分
8079
发表于 2011-12-3 04:19:32 | 显示全部楼层
直接通过iptables封不就行了吗, 为什么要用csf
回复

使用道具 举报

480

主题

8046

回帖

1万

积分

论坛元老

积分
17578
发表于 2011-12-3 09:22:03 | 显示全部楼层
分析日志太蛋痛了

不用iptables的情况下 可以用apache或者nginx屏蔽IP的功能  也行的
回复

使用道具 举报

130

主题

5117

回帖

1万

积分

论坛元老

积分
10658
发表于 2011-12-3 09:23:15 | 显示全部楼层


回复

使用道具 举报

32

主题

1165

回帖

2454

积分

金牌会员

积分
2454
发表于 2011-12-3 09:39:00 | 显示全部楼层
有碼學習
回复

使用道具 举报

201

主题

4580

回帖

9795

积分

论坛元老

积分
9795
发表于 2011-12-3 09:46:06 | 显示全部楼层
楼主很厉害,非常不错
回复

使用道具 举报

304

主题

1661

回帖

4278

积分

论坛元老

积分
4278
发表于 2011-12-3 10:04:38 | 显示全部楼层
楼主不错,能否写个iptables下的?
回复

使用道具 举报

438

主题

2218

回帖

5796

积分

论坛元老

积分
5796
发表于 2011-12-3 10:12:16 | 显示全部楼层
我尝试把脚本改改!!
回复

使用道具 举报

123

主题

1769

回帖

3941

积分

论坛元老

积分
3941
发表于 2011-12-3 11:56:33 | 显示全部楼层


  直接上CC软防,几十万CC无视
回复

使用道具 举报

0

主题

2

回帖

8

积分

新手上路

积分
8
发表于 2011-12-3 11:57:50 | 显示全部楼层
原帖由 loning 于 2011-12-3 03:45 发表


我的服务器每天大概会被1000个左右的并发IP CC
我通过日志大概分析出来一些非法的请求,但是在使用CSF禁止ip的时候,由于iptables要锁表,导致特别特别慢。。求快速加入iptables的方法...

下面是封大量连接没有referer来 ...

看来以后要加referer了咱不懂
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Discuz! X

GMT+8, 2025-1-11 17:47 , Processed in 0.020179 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表