网站服务器安全是个大话题;说到什么是加固某一台网站服务器的最佳工具和技术,不同的人自有不同的偏好和观点。就Apache网站服务器而言,即便不是所有专家,至少也是绝大多数专家一致认为,mod_security和mod_evasive是两个非常重要的模块,可以保护Apache网站服务器远离常见的威胁。 我们在本文中将探讨如何安装及配置mod_security和mod_evasive,假设Apache HTTP网站服务器已经搭建并运行起来。我们将执行演示性质的压力测试,看看该网站服务器在遇到拒绝服务(DOS)攻击时会有怎样的反应,并且演示它如何借助这些模块来反击。我们在本教程中将使用CentOS平台。 安装mod_security和mod_evasive 要是你还没有启用CentOS/RHEL服务器中的EPEL软件库,就需要先启用该软件库,之后再安装这些软件包。 # yum install mod_security # yum install mod_evasive 安装完成后,会在/etc/httpd/conf.d里面找到主配置文件: 现在,需要确保Apache启动时装入这两个模块。在mod_security.conf和mod_evasive.conf中分别寻找下列行(如果没有这些行,就添加上去): LoadModule security2_module modules/mod_security2.so LoadModule evasive20_module modules/mod_evasive20.so •LoadModule指令告诉Apache链接对象文件(*.so),将它添加到活动模块列表。 •security2_module和evasive20_module是模块的名称。 •modules/mod_security2.so和modules/mod_evasive20.so是从/etc/httpd目录到模块源文件的相对路径。只要检查/etc/httpd/modules目录的内容,就能核实路径(必要的话,还可以更改路径)。 现在重启Apache网站服务器: # service httpd restart 配置mod_security 为了使用mod_security,必须先安装核心规则集(CRS)。基本上而言,CRS为网站服务器提供了一套规则,这套规则明确了在某些情形下服务器有怎样的行为。Trustwave的SpiderLabs(开发mod_security的公司)提供了开放式Web应用安全项目(OWASP)ModSecurity CRS