使用Mod_Security和Mod_evasive模块保护Apache免受暴力攻击或DDoS攻击

mod_security(用于Web应用程序的开放源码入侵检测和防御引擎,与Web服务器无缝集成)和mod_evasive是

对于您在托管业务中的用户,或者如果您托管自己的服务器并将其暴露在互联网上,那么保护您的系统免受攻击者的攻击必须是高度优先的。 mod_security的 (一个开源入侵检测和预防引擎用于网络应用程序与Web服务器无缝集成)和mod_evasive是可以用于防止蛮力或(D)DoS攻击网络服务器两个非常重要的工具。 阅读也如何安装Linux的恶意软件与检测的ClamAV杀毒引擎 mod_evasive,顾名思义,提供回避能力,同时受到攻击,作为从这样的威胁屏蔽网络服务器一把伞。
在CentOS中安装Mod_Security Mod_Evasive

安装Mod_Security和Mod_Evasive以保护Apache

在这篇文章中,我们将讨论如何安装,配置,并把它们发挥与Apache在RHEL / CentOS的6,7以及Fedora的21-15一起。此外,我们将模拟攻击,以验证服务器相应地做出反应。 这假定您在系统上安装了LAMP服务器。如果没有,请在继续进行之前检查本文。
  1. 在RHEL / CentOS 7中安装LAMP
您还需要设置的iptables作为默认的防火墙前端,而不是firewalld如果你正在运行RHEL / CentOS 7或Fedora 21.我们要想在这两个RHEL / CentOS的7/6Fedora使用相同的工具,这样做21。

第1步:在RHEL / CentOS 7和Fedora 21上安装Iptables防火墙

首先,停止并禁用firewalld:
# systemctl stop firewalld
# systemctl disable firewalld
在CentOS 7中禁用防火墙服务

禁用防火墙服务

然后使iptables的前安装的iptables的服务包:
# yum update && yum install iptables-services
# systemctl enable iptables
# systemctl start iptables
# systemctl status iptables
在CentOs中安装Iptables防火墙7

安装Iptables防火墙

第2步:安装Mod_Security和Mod_evasive

除了已经到位具有灯设置,您还必须启用EPEL软件库RHEL / CentOS的7/6,为了安装这两个包。 Fedora用户不需要启用任何repo,因为epel已经是Fedora项目的一部分。
# yum update && yum install mod_security mod_evasive
当安装完成后,你会发现在/etc/httpd/conf.d这两个工具的配置文件。
# ls -l /etc/httpd/conf.d
mod_security + mod_evasive配置

mod_security + mod_evasive配置

现在,为了给这两个模块与Apache集成,并把它加载它们启动时,请确保以下行出现在分别mod_evasive.confmod_security.conf,顶层部分:
LoadModule evasive20_module modules/mod_evasive24.so
LoadModule security2_module modules/mod_security2.so
注意, 模块/ mod_security2.so模块/ mod_evasive24.so是相对路径,从/ etc / httpd的目录模块的源文件。 您可以验证这一点(并改变它,如果需要的话)通过列出的在/ etc的内容/ httpd的/ modules目录:
# cd /etc/httpd/modules
# pwd
# ls -l | grep -Ei '(evasive|security)'
验证mod_security + mod_evasive模块

验证mod_security + mod_evasive模块

然后重新启动Apache并验证它加载mod_evasivemod_security的
# service httpd restart 		[On RHEL/CentOS 6 and Fedora 20-18]
# systemctl restart httpd 		[On RHEL/CentOS 7 and Fedora 21]
[Dump a list of loaded Static and Shared Modules]
# httpd -M | grep -Ei '(evasive|security)'				
检查mod_security + mod_evasive模块加载

检查mod_security + mod_evasive模块加载