来一发iptables主动屏障歹意高流量ip
欢迎大家来到仓酷云论坛!成绩形貌:比来公司的nginx代办署理办事器,三更都流量很高,多是歹意用户开挂革新网站页面。
如前段工夫旧事上所说的黄牛党开挂革新火车票网站一样,刷得网站几近近似瘫了。由于我们公司网站是彩票开奖体系,也怕如许子歹意被刷,亟待办理。
办理举措:
这台办事器就是个nginx代办署理办事器,因而能够借助nginx的日记检察
cat/opt/webapps/log_nginx/518.access.log|awk-F?{print$1}|awk{print$1}|sort-r|uniq-c|sort-nr|more
撸一下,发明良多ip会见此次弄得离谱了点
由于日记带工夫的,设置好工夫变量,换个更准的脚来撸撸
cat/opt/webapps/log_nginx/518.access.log|awk"/$tian/$yue/$nian/{print$1,$6,$7}"|awk-F?{print$1}|sort-r|uniq-c|sort-nr|awk$1>3000{print$2}>/opt/webapps/log_nginx/ip."$DATE"
因而呼我就把明天清晨0点到如今的会见次数凌驾3000次且做不异件事,(我把会见提一个页面判断成同件事)全虑出来丢到ip."DATE"文件了,接上去就是再iptables增加DROP,让他持续猖狂……
最终!!!(上剧本)
#!/bin/bash
tian=`date|awk{print$3}`
yue=`date|awk{print$2}`
nian=`date|awk{print$6}`
YEAR=`date+%Y`
MONTH=`date+%m`
DAY=`date+%d`
HOUR=`date+%H`
#MIN=`date+%M`
DATE=$YEAR-$MONTH-$DAY-$HOUR
cat/opt/webapps/log_nginx/518.access.log|awk"/$tian/$yue/$nian/{print$1,$6,$7}"|awk-F?{print$1}|sort-r|uniq-c|sort-nr|awk$1>3000{print$2}>/opt/webapps/log_nginx/ip."$DATE"
awk{system("iptables-DINPUT-s"$0"-jDROP;iptables-IINPUT-s"$0"-jDROP")}/opt/webapps/log_nginx/ip."$DATE"
serviceiptablessave
serviceiptablesreload
#Now,startatruncated518.access.log,toprepareforthenextoperation
cp/opt/webapps/log_nginx/518.access.log/opt/webapps/log_nginx/518.access.log_"$DATE"
echo"Letusgo===========================================">/opt/webapps/log_nginx/518.access.log
最初两句是我在截断日记哦,不是百年以后,我的awk就跑不动了,log太年夜会叫的……
宏伟上的能够间接增加到企图义务里,不外能够有的ip其实不歹意,野生稍瞥一眼更好
幻想的了局还没思索,
由于iptables划定规矩太多会哭的,我想把天天划定规矩正文上工夫,今后每次实行脚了就把几天前的解封了,以免百年以后全世界都进进我的黑名单了(假如ourchina生齿不那末多)欢迎大家来到仓酷云论坛! 熟悉操作是日常学习Linux中的三大法宝。以下是作者学习Linux的一些个人经验,供参考: 随着Linux应用的扩展,出现了不少Linux社区。有一些非常优秀的社区往往是Linux高手的舞台,如果在探讨高级技巧的论坛张贴非常初级的问题经常会没有结果。 清楚了解网络的基础知识,特别是在Linux下应用知识,如接入internet等等。 你需要提供精确有效的信息。Linux这并不是要求你简单的把成吨的出错代码或者数据完全转储摘录到你的提问中。 Linux最大的特点就是其开源性,这一点是十分难得的,这也是它能够存在到现在的原因之一。 任何人都可以根据自己的喜好来定制适合自己的操作系统,Linux?是抢占式多任务多用户操作系统.
页:
[1]