Nginx 防ddos配置

发布时间:2019-12-09编辑:脚本学堂
Nginx 防ddos配置

先看一段攻击日志:
123.232.102.228 - - [07/Mar/2012:14:24:23 +0800] “GET /forum-1342-1.html
HTTP/1.0” “200” 235327 “-” “Mozilla/4.0 (compatible; MSIE 6.0; Windows
NT 5.0; .NET CLR 1.1.4322)” “-”

防ddos配置

nginx被动防御推荐)
 

复制代码 代码如下:
if ( $http_user_agent ~* “Mozilla/4.0 (compatible; MSIE 6.0;
Windows NT 5.0; .NET CLR 1.1.4322)” )
{
return 444;
}

来源地址作为关键字(如下:)
 

复制代码 代码如下:
if ($http__referer ~ * “/zhuanti/nzpp/zonghegr.jsp?group=2”)
{
return 444;
}
 location /photos/ {
  valid_referers none blocked www.mydomain.com mydomain.com;
 
  if ($invalid_referer) {
    return   403;
  }
}

none意为不存在的Referer头。
blocked意为根据防火墙伪装Referer头,如:“Referer: XXXXXXX”。
server_names为一个或多个服务器的列表,0.5.33版本以后可以在名称中使用“*”通配符。