Ubuntu Apache搭建modSecurity,创建自己的WAF

来源:互联网 发布:中山大学图书馆 知乎 编辑:程序博客网 时间:2024/05/01 00:28

安装apache2

安装命令:sudo apt-get install apache2
启动/停止/重启apache2: service apache2 start/stop/restart

安装modSecurity

第一步:安装libapache2-modsecurity模块及其依赖包

apt-get install libxml2 libxml2-dev libxml2-utils libaprutil1 libaprutil1-dev libapache2-modsecurity

第二步:配置modsecurity,启用拦截模式
下载modsecurity和modsecurity-crs

$service apache2 reload$cd /etc/modsecurity/$mv modsecurity.conf-recommended modsecurity.conf$vim /etc/modsecurity/modsecurity.conf修改SecRuleEngine On

第三步:使用modsecurity核心规则集
将我们想起用的规则集放置在以下目录下

cd /usr/share/modsecurity-crs/activated_rules/

选择启用base规则集

for f in $(ls ../base_rules/); do sudo ln -s ../base_rules/$f; done

你可以采用同样的办法启用其他规则集,注意不同的规则集可能需要启用特定的模块

修改apache模块配置,启用规则集

注意:modsecurity 2.7版本与2.6版本的配置文件有些区别

(1)2.7版本

vim /etc/apache2/mods-available/security2.conf

修改

<IfModule security2_module>        # Default Debian dir for modsecurity's persistent data        SecDataDir /var/cache/modsecurity        # Include all the *.conf files in /etc/modsecurity.        # Keeping your local configuration in that directory        # will allow for an easy upgrade of THIS file and        # make your life easier        IncludeOptional /etc/modsecurity/*.conf        IncludeOptional /usr/share/modsecurity-crs/*.conf        IncludeOptional /usr/share/modsecurity-crs/activated_rules/*.conf</IfModule>

(2)2.6版本

‍‍vim  /etc/apache2/mods-available/mod-security.conf‍‍

修改

Include /etc/modsecurity/*.confInclude /usr/share/modsecurity-crs/*.confInclude /usr/share/modsecurity-crs/activated_rules/*.conf

第四步:启用modsecurity模块

$a2enmod headers
$a2enmod security2 (版本2.6: a2enmod mod-security)
$service apache2 restart
第五步:测试真实的攻击payload

看是否能拦截

第六步:自定义WAF规则
Reference

  1. ubuntu上安装Apache2+ModSecurity及自定义WAF规则
  2. ModSecurity CRS 笔记、WAF防御checklist,及WAF架构的一些想法
  3. ModSecurity SecRule cheatsheets
0 0
原创粉丝点击