Azure上Linux VM防DDOS攻击:使用Apache mod_evasive

时间:2021-11-22 12:12:16

部署在云端的虚拟机和web服务,很容易受到DoS护着DDoS的服务攻击,让一些新上线的业务苦不堪言,当然各个云服务提供商也有不同层面DDOS的防护,然而由于防护粒度,攻击复杂度的关系,未必可以满足你的需求,本文介绍如何对使用了Apache httpd的用户做一些简单的配置,从而有效防护一些简单的DDOS攻击。

 

mod_evasive模块是httpd对web服务器的一个DoS和DDoS防护模块,针对单个IP地址客户端对单个页面,访问总量等参数,对疑似DDOS的IP地址进行屏蔽,配置简单而且简单有效,具体步骤将会在以下步骤中详述。

 

本文测试使用Azure作为公有云平台,采用CentOS 6.5和自带的Apache httpd 2.2作为demo环境。

 

  1. 安装apache httpd

     

    Azure上Linux VM防DDOS攻击:使用Apache mod_evasive

    Azure上Linux VM防DDOS攻击:使用Apache mod_evasive

    2. 安装mod_evasive:

     

    Azure上Linux VM防DDOS攻击:使用Apache mod_evasive

    3. 检查配置文件,并对mod_evasive进行配置:

     

    Azure上Linux VM防DDOS攻击:使用Apache mod_evasive

     

    3.1 在配置文件的首行,可以看到加载了mod_evasive模块:

    # mod_evasive configuration
    LoadModule evasive20_module modules/mod_evasive20.so

     

    3.2 DOSHashTableSize是存放DOS数据的表,如果你的用户访问数量比较高,建议设置高一写,本测试中使用默认值:

        DOSHashTableSize    3097

     

    秒)来自同一个IP地址对同一个页面的访问次数,如果超过这个次数,那么这个IP地址就会被放到黑名单,禁止掉,默认为2,可能有点太低了,在本次测试中,调整为10(不排除一个某个公司的员工都是通过一个代理地址出来,而非DDOS的情况,这个需要综合考虑)

        DOSPageCount        10

     

    秒)来自同一个IP地址对网站的访问总量,一旦超过,该IP地址就被放入黑名单,暂时使用默认

        DOSSiteCount        50

     

        # The interval for the page count threshhold; defaults to 1 second
        # intervals.
        DOSPageInterval     1

        DOSSiteInterval     1

     

    (3分钟)

        DOSBlockingPeriod   180

     

    3.7 其他的是是否需要邮件提示,一旦发现DDOS需要执行的命令,日志文件地址等,大家可以自行配置

        #DOSEmailNotify      you@yourdomain.com

     

    4. 重新启动httpd服务,并进行验证:

    [azureuser@centostest ~]$ sudo service httpd restart

    Stopping httpd:                                            [  OK  ]

    Starting httpd:                                            [  OK  ]

    Azure上Linux VM防DDOS攻击:使用Apache mod_evasive

    5. 验证下mod_evasive是否被正确加载

     

    Azure上Linux VM防DDOS攻击:使用Apache mod_evasive

     

    次访问,那么mod_evasive就会把这个地址加入黑名单,并拒绝访问,我们看一下效果:

    Azure上Linux VM防DDOS攻击:使用Apache mod_evasive

     

    7. 如何知道该地址被加入了黑名单昵?事实上mod_evasive也会将该信息写入syslog:

    Azure上Linux VM防DDOS攻击:使用Apache mod_evasive

     

    到此为止所有的测试和验证结束,可以看到mod_evasive是一个简单易用的DDOS工具:)

Azure上Linux VM防DDOS攻击:使用Apache mod_evasive的更多相关文章

  1. Windows Azure 上 Linux VM 中的交换空间 – 第 2 部分

    本文章由 Azure CAT 团队的 Piyush Ranjan (MSFT) 撰写. 在前一篇文章 Windows Azure 上Linux VM 中的交换空间第 1 部分中,我介绍了在默认情况下, ...

  2. Azure上Linux VM DDOS攻击预防: 慢速攻击

    在上篇博客(http://www.cnblogs.com/cloudapps/p/4996046.html)中,介绍了如何使用Apache的模块mod_evasive进行反DDOS攻击的设置,在这种模 ...

  3. Azure上Linux VM误配防火墙的恢复方法

    在实际运维中,防火墙把自己挡在机器外面的情况会时有发生.如何快速的恢复对运维人员是很重要的. 本文将介绍如何用Azure Extension实现不通过ssh对VM进行操作的方法. 之前写过一遍Blog ...

  4. linux中防CC攻击两种实现方法(转)

    CC攻击就是说攻击者利用服务器或代理服务器指向被攻击的主机,然后模仿DDOS,和伪装方法网站,这种CC主要是用来攻击页面的,导致系统性能用完而主机挂掉了,下面我们来看linux中防CC攻击方法. 什么 ...

  5. 转:nginx防DDOS攻击的简单配置

    文章来自于: 近期由于工作需要,做了些防DDOS攻击的研究,发现nginx本身就有这方面的模块ngx_http_limit_req_module和ngx_http_limit_conn_module. ...

  6. 在Windows Azure上配置VM主备切换(1)——Linux篇

    对任何一个上线系统来说,高可用设计是不可或缺的一个环节,这样才可以确保应用可以持续.稳定的运行,而不是频繁的掉线.停机.高可用设计的核心思路很简单,就是消除一切单点故障,将单点链路或者节点升级为多点. ...

  7. Linux下防御DDOS攻击的操作梳理

    DDOS的全称是Distributed Denial of Service,即"分布式拒绝服务攻击",是指击者利用大量“肉鸡”对攻击目标发动大量的正常或非正常请求.耗尽目标主机资源 ...

  8. 简单配置vps,防ddos攻击

    防人之心不可无. 网上总有些无聊或者有意的人.不多说了.上干货,配置vps apf防小流量ddos攻击. 对于大流量的ddos攻击, 需要机房的硬件防火墙,vps内部可能也扛不住. 1. 安装 DDo ...

  9. iptables防DDOS攻击和CC攻击设置

    防范DDOS攻击脚本 #防止SYN攻击 轻量级预防 iptables -N syn-flood iptables -A INPUT -p tcp --syn -j syn-flood iptables ...

随机推荐

  1. csharp:正则表达式采集网页数据

    https://msdn.microsoft.com/zh-cn/library/system.text.regularexpressions.regex(v=vs.110).aspx https:/ ...

  2. linux shell 字符串操作(长度,查找,替换)详解

    linux shell 字符串操作(长度,查找,替换)详解 在做shell批处理程序时候,经常会涉及到字符串相关操作.有很多命令语句,如:awk,sed都可以做字符串各种操作. 其实shell内置一系 ...

  3. k近邻法的C++实现:kd树

    1.k近邻算法的思想 给定一个训练集,对于新的输入实例,在训练集中找到与该实例最近的k个实例,这k个实例中的多数属于某个类,就把该输入实例分为这个类. 因为要找到最近的k个实例,所以计算输入实例与训练 ...

  4. cmd for 用法

    1:for命令及变量 基本格式: FOR /参数 %variable IN (set) DO command [command_parameters] %variable:指定一个单一字母可替换的参数 ...

  5. Inverse Quadratic Interpolation (website)

    Inverse Quadratic Interpolation:  https://www.youtube.com/watch?v=0H7mVPTLF7Q : https://www.youtube. ...

  6. shell脚本学习(一):shell脚本开发的基本规范和习惯

    1.脚本第一行指定脚本解释器 #!/bin/bash 或 #!/bin/sh 2.脚本开头增加作者.脚本作用描述等信息 1 #!/bin/bash 2 #Author: iskylite 3 #Blo ...

  7. Mybatis迷你版--QueryObjectFactory

    今天在看JDBC4.2新规范,然后无意之间就碰到了这个东西QueryObjectFactory, 市面上orm框架有很多,在这里我就不一一列举了.那么今天我来记录一下QueryObjectFactor ...

  8. 【UR #7】水题走四方

    题目描述 今天是世界水日,著名的水题资源专家蝈蝈大臣发起了水题走四方活动,向全世界发放成千上万的水题. 蝈蝈大臣是家里蹲大学的教授,当然不愿意出门发水题啦!所以他委托他的助手欧姆来发. 助手欧姆最近做 ...

  9. XML 与 XML Schema的使用教程

    引言:我写本文的宗旨在于给需要使用XML,而又对XML不是很熟悉的人们提供一种使用思路,而不没有给出具体的     使用方法,至于下文中提到的使用方法,还未尝试过,都是从网上整理而来! 一.概述 什么 ...

  10. Phpstorm 2018及2017.3.2激活码(DataGrip WebStorm 激活码)

    PhpStrom的下载地址:https://www.jetbrains.com/phpstorm/ 2018适应 最新版PhpStorm 2018正式版改进了PHP 7支持,改进代码完成功能. 直接用 ...