侧边栏壁纸
博主头像
爱运维 博主等级

行动起来,活在当下

  • 累计撰写 197 篇文章
  • 累计创建 143 个标签
  • 累计收到 21 条评论

目 录CONTENT

文章目录

小脚本预防小型的攻击

Administrator
2016-11-21 / 1 评论 / 0 点赞 / 1 阅读 / 0 字

今天下午突然发现blog打不开,纳闷,不对啊。虽说我带宽不大,但是我上了CDN和七牛啊,赶紧登陆云服务器看了下,大量的TIME_WAIT,而且都是几个IP,看来遭遇了小型的攻击,赶紧把这几个IP加入防火墙DROP,立马发现就访问上升。为了预防再次出现,特此写了个脚本,一键DROP。

qq%e5%9b%be%e7%89%8720161121212423

代码如下(献丑,就10来分钟写完,别喷哈)


#/bin/bash
netstat -an|grep ^tcp|awk  '{print $5}'|cut -d: -f1|grep -v '0.0.0.0'|sort |uniq -c|sort -rn > /tmp/ip.txt

#for I in `cat /tmp/ip.txt|awk '{print $1}'` 
for I in `seq 1 $(cat /tmp/ip.txt|wc -l)`
        do
                num=`cat /tmp/ip.txt |head -$I|tail -1|awk '{print $1}'`
                num2=`cat /tmp/ip.txt |head -$I|tail -1|awk '{print $2}'`
                if [[ $num -gt 25 ]] ;then
                        /sbin/iptables -I INPUT 1 -s $num2 -j DROP
                        echo "`date`   $num2     $num">>/root/drop_ip.txt
                fi
        done
有需要就加入cron定时任务,建议个人需求改,毕竟遇到都不一样


0

评论区