DDoS攻击研究笔记

《DDoS攻击研究笔记》
《DDoS攻击研究笔记》

做了网站开发十几年,从未想像过自己开发的网站会受到ddos攻击,也不曾想像过自己能做到惹人攻击这一步,说不定是得罪了什么人…🤣

也许这是网站做到一定程度,所有网站SEOer都需要面对的一个问题…好,下面就开始研究一下这个问如何来解决

DDoS攻击的定义

分布式拒绝服务攻击DDoS是一种基于DoS的特殊形式的拒绝服务攻击,是一种分布的、协同的大规模攻击方式。单一的DoS攻击一般是采用一对一方式的,它利用网络协议和操作系统的一些缺陷,采用欺骗和伪装的策略来进行网络攻击,使网站服务器充斥大量要求回复的信息,消耗网络带宽或系统资源,导致网络或系统不胜负荷以至于瘫痪而停止提供正常的网络服务。与DoS攻击由单台主机发起攻击相比较,分布式拒绝服务攻击DDoS是借助数百、甚至数千台被入侵后安装了攻击进程的主机同时发起的集团行为。

NGINX防止DDoS攻击

//ngx_http_limit_req_module模块通过漏桶原理来限制单位时间内的请求数,一旦单位时间内请求数超过限制就会返回503错误。
http {
    limit_req_zone $binary_remote_addr zone=one:10m rate=100r/s; //触发条件,所有访问ip 限制每秒10个请求
    ...
    server {
        ...
        location  ~ \.php$ {
            limit_req zone=one burst=5 nodelay;   //执行的动作,通过zone名字对应
               }
           }
     }

//1m内存可以保存16000会话


//限制单个IP的连接数
http {
    limit_conn_zone $binary_remote_addr zone=addr:10m; //触发条件
    ...
    server {
        ...
        location /download/ {
            limit_conn addr 2;    // 限制同一时间内2个连接,超出的连接返回503
                }
           }
     }

查看攻击IP

#netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
----------------------------------------------------
      3 172.70.214.224
      3 172.71.150.46
      3 172.71.154.29
      4 108.162.246.129
      4 162.158.166.240
      4 162.158.167.9
    401 172.70.206.234   //找出攻击者的ip然后封掉
   1471 127.0.0.1
前面的数字表示IP连接的次数,可见最后一个IP 172.70.206.234连接服务器401次,每个IP几个、十几个或几十个连接数都还算比较正常,如果像上面成百上千肯定就不正常了。
点赞

发表评论

邮箱地址不会被公开。 必填项已用*标注