红联Linux门户
Linux帮助

Ubuntu 16.04安装配置ModSecurity-Apache

发布时间:2016-08-03 15:25:56来源:topspeedsnail.com作者:斗大的熊猫
ModSecurity(https://www.modsecurity.org/)是开源的Web应用程序防火墙,它可以做为Apache的一个模块使用。ModSecurity可以保护网站防止各种攻击,包括XSS、SQLi、CSRF、DDoS、暴力破解等等。用户可以编写规则实现特定功能。
本文介绍怎么为Apache安装配置ModSecurity模块。
如果你没有安装Apache Web Server,参考:http://www.linuxdiyf.com/linux/21530.html
 
安装ModSecurity
sudo apt install libapache2-mod-security2
上面命令会安装ModSecurity模块并自动激活。
ModSecurity安装完成之后还需要创建一个配置文件,可以直接使用默认的配置文件做为蓝本:
sudo mv /etc/modsecurity/modsecurity.conf-recommended /etc/modsecurity/modsecurity.conf
重启Apache使生效:
sudo systemctl reload apache2
# 或
sudo systemctl restart apache2
 
配置ModSecurity
ModSecurity默认配置包含常用选项和几个规则:
sudo vim /etc/modsecurity/modsecurity.conf
 
下面我们来添加CRS(OWASP Core Rule Set),这是一个提供额外保护的规则集合。
 
开启CRS规则
CRS规则位于:
cd /usr/share/modsecurity-crs/
Ubuntu 16.04安装配置ModSecurity-Apache
编辑:
sudo vim /etc/apache2/mods-enabled/security2.conf
 
引入规则文件,activated_rules目录用来存放激活的规则:
IncludeOptional /usr/share/modsecurity-crs/*.conf
IncludeOptional /usr/share/modsecurity-crs/activated_rules/*.conf
 
查看activated_rules目录的README文件获得更多信息。
 
例如要添加SQL注入保护:
sudo ln -s /usr/share/modsecurity-crs/base_rules/modsecurity_crs_41_sql_injection_attacks.conf /usr/share/modsecurity-crs/activated_rules/modsecurity_crs_41_sql_injection_attacks.conf
 
这个目录包含很多实用的规则。
 
ModSecurity默认以DetectionOnly模式运行(/etc/modsecurity/modsecurity.conf):
SecRuleEngine DetectionOnly
 
更改为:
SecRuleEngine On
Ubuntu 16.04安装配置ModSecurity-Apache
 
重启Apache使生效:
sudo systemctl reload apache2
# 或
sudo systemctl restart apache2
 
参考文档:https://github.com/SpiderLabs/ModSecurity/wiki/Reference-Manual
 
本文永久更新地址:http://www.linuxdiyf.com/linux/22969.html