利用nginx 日志处理ddos攻击

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了利用nginx 日志处理ddos攻击相关的知识,希望对你有一定的参考价值。

#防止ddos攻击,将此脚本放置到定时任务中。

#!/bin/bash

log=‘/usr/local/nginx/logs/nginx.log‘ #日志绝对路径


DATE=`date -d ‘1 minutes ago‘ "+%d/%b/%Y:%H:%M"`  #显示出日志格式的时间,方便匹配,%b简短#格式时间,-d 显示设定的时间。
tmp=`date "+%s%N"`  #秒要精确化

grep "$DATE" $log|awk ‘{print $1}‘|sort |uniq -c |sort -rn |grep -v ‘类似你的cdn等你允许拉取你ip addr‘>/var/log/ip_${tmp}.log #收集到攻击你的ip

while read line  #一次读进一行 (num  ip)
do
count=`echo $line|awk ‘{print $1}‘`
ip=`echo $line|awk ‘{print $2}‘`

re=`echo $count-100|bc`
if [ $re -gt 0 ];then
	echo `date` ": $ip has been  DP" >>/var/log/iptalbes.log
	/sbin/iptables -I INPUT -p tcp -m tcp -s $ip --dport 80 -j DROP 
fi
done </var/log/ip_${tmp}.log  

rm -f /var/log/ip_${tmp}.log


本文出自 “Linux” 博客,请务必保留此出处http://ridingonhorse.blog.51cto.com/11265295/1874055

以上是关于利用nginx 日志处理ddos攻击的主要内容,如果未能解决你的问题,请参考以下文章

nginx常用的请求头参数和防DDOS攻击

通过Nginx和Nginx Plus阻止DDoS攻击

DDoS攻击防护

关于线上一次DDOS攻击和阿里云DDOS防护相关内容

常看见的“DDOS”是指啥?

nginx通过配置防止DDoS攻击