FreeBSD为Apache HTTPD服务器安装mod_security
时间:2020-01-09 10:38:33 来源:igfitidea点击:
问题描述:mod_security向Apache HTTP Server提供了一系列请求过滤和其他安全功能。
如何在FreeBSD操作系统下安装mod_security?
解决方法:ModSecurity是作为Apache模块运行的开源Web应用程序防火墙,而2.0版提供了许多新功能和改进。
它提供了针对Web应用程序的一系列攻击的保护,并允许HTTP流量监视和实时分析,而无需更改现有基础结构。
一些功能包括:
- 并行文本匹配
- 地理IP分辨率
- 信用卡号检测
- 支持内容注入
- 自动规则更新
- 脚本以及许多其他功能。
FreeBSD安装mod_security
执行以下命令以更新端口树:
# portsnap fetch update
在FreeBSD 7下,可以通过执行以下命令来安装mod_security:
# cd /usr/ports/www/mod_security # make install clean
配置mod_security
modsecurity 2核心规则已安装在
/usr/local/etc/apache22/Includes/mod_security2/
默认情况下,它以DetectionOnly模式运行,以免干扰正在运行的网站和Apache的运行。
首先将目录更改为/usr/local/etc/apache22/Includes/mod_security2 /:
# cd /usr/local/etc/apache22/Includes/mod_security2/
现在,打开ModSecuirty核心规则集文件modsecurity_crs_10_config.conf,执行:
# vi modsecurity_crs_10_config.conf
该文件有据可查,因此请根据您的要求对其进行自定义。
打开位于/usr/local/etc/apache22的httpd.conf文件,并确保存在以下行:
LoadFile /usr/local/lib/libxml2.so LoadModule security2_module libexec/apache22/mod_security2.so
最后,重新启动apache:
# /usr/local/etc/rc.d/apache22 restart
监视mod_security日志文件
默认情况下,日志写入以下两个文件:
- /var/log/httpd-modsec2_audit.log
- /var/log/httpd-modsec2_debug.log
- /var/log/httpd-error.log或虚拟域error.log文件
您可以使用grep或tail查看这两个文件来检测攻击:
tail -f /var/log/httpd-modsec2_audit.log grep cmd.exe /var/log/httpd-modsec2_audit.log tail -f /home/httpd/example.com/logs/error.log
一旦一切正常运行,请打开modsecurity_crs_10_config.conf文件并将SecRuleEngine设置为On:
SecRuleEngine On
重新启动Apache:
# /usr/local/etc/rc.d/apache22 restart