加入收藏 | 设为首页 | 会员中心 | 我要投稿 惠州站长网 (https://www.0752zz.com.cn/)- 办公协同、云通信、物联设备、操作系统、高性能计算!
当前位置: 首页 > 业界 > 正文

使用Nginx处理DDOS进行系统优化

发布时间:2018-08-30 22:33:44 所属栏目:业界 来源:支付浪潮
导读:副标题#e# DDoS很常见,甚至被称为黑客圈子的准入技能;DDoS又很凶猛,搞起事来几乎压垮一方网络。 什么是分布式拒绝服务DDoS(Distributed Denial of Service)意为分布式拒绝服务攻击,攻击者利用大量肉鸡对攻击目标发动大量的正常或非正常请求,耗尽目标

您可以配置NGINX或NGINX Plus来阻止几种请求:

  • 请求一个似乎有针对性的特定网址
  • User-Agent报头设置为与正常客户端流量不对应的值的请求
  • 将 Referer标头设置为可与攻击关联的值的请求
  • 其他头文件具有可与攻击关联的值的请求

例如,如果您确定DDoS攻击的目标是URL /foo.php,则可以阻止该页面的所有请求:

  1. ​location /foo.php { 
  2.     deny all; 

或者,如果您发现DDoS攻击请求的 User-Agent头部值为 foo或 bar,则可以阻止这些请求。

  1. ​location / { 
  2.     if ($http_user_agent ~* foo|bar) { 
  3.         return 403; 
  4.     } 
  5.     # ... 

该变量引用一个请求头,在上面的例子中是头。类似的方法可以用于具有可用于识别攻击的值的其他报头。 http_*name*``User-Agent

限制到后端服务器的连接

NGINX或NGINX Plus实例通常可以处理比负载平衡的后端服务器更多的并发连接。使用NGINX Plus,您可以限制连接到每个后端服务器的数量。例如,如果要限制NGINX Plus与网站 上游组中的两个后端服务器建立的连接数不超过200个:

  1. ​upstream website { 
  2.     server 192.168.100.1:80 max_conns=200; 
  3.     server 192.168.100.2:80 max_conns=200; 
  4.     queue 10 timeout=30s; 

max_conns 应用于每个服务器的参数指定NGINX Plus打开的最大连接数。该 queue 指令限制上游组中所有服务器达到其连接限制时排队的请求数,并且该 timeout参数指定在队列中保留请求的时间。

处理基于范围的攻击

一种攻击方法是发送一个 Range具有非常大值的标头,这可能导致缓冲区溢出。有关如何使用NGINX和NGINX Plus来缓解此类攻击的讨论,请参阅使用NGINX和NGINX Plus来保护CVE-2015-1635。

处理高负荷

DDoS攻击通常会导致高流量负载。有关调整NGINX或NGINX Plus以及允许系统处理更高负载的操作系统的提示,请参阅调整NGINX的性能。

识别DDoS攻击

(编辑:惠州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读