Mac下安装apache waf模块modsecurity

modsecurity简介

mods 是apache的一个安全模块,他的做用是web应用防火墙(WAF).若是不懂WAF请自行google下。git

问题的由来

mods在yum源(centos)以及apt源(ubuntu)下都有现成的安装包。只须要相似 apt-get install 或者yum install 便可。
可是在mac的osx系统下,没有任何二级制安装包,若是想在osx上玩mods,那就须要从源码编译github

源码编译

通常来讲,一条命令就能够搞定。谁让brew很逆天呢
命令以下:web

brew install homebrew/apache/mod_security

参考:https://gist.github.com/amarn...apache

若是顺利的话,brew会下载全部依赖以及mods的源码进行编译安装。可是....貌似通常不会那么顺利。ubuntu

编译时问题

1. brew安装时,在写入usr等文件夹的时候会说没有权限。加上sudo 或者sudo -i切换到root再安装的时候,又会说『使用root权限安装太危险了』....黑人问号脸,你特么在逗我,那你说该怎么装嘛..

解决方案: sudo chown ${whoami} /usr 直接暴力把/usr的归属给变成了当前用户..哪位大佬有其余方案请分享出来vim

2. 下载mods包的时候一直没进度(是curl抽风了好么)

解决方案:centos

  1. brew会显示从那个url下载该源码包。复制url,浏览器下载xcode

  2. 而后执行brew --cache看看cache目录在哪里浏览器

  3. 把下载下来的压缩包丢到该目录下面(奇怪的是我这边显示出来的cache目录不是显示出来的cache目录,你们能够往/Users/xxx/Library/Caches/Homebrew/放一份再)安全

3. 安装到最后的提示没有apu或者apr库

这个有点麻烦,理论上brew会帮忙装好的。可是我看日志好像是mods的makefile指定的apr/apu的目录有问题,修改makefile有点麻烦,又不知道brew把apr和apu装到哪里去了。因此本身下载apr和apu的安装包,再编译了一遍,而后./configration的时候经过参数指定路径。参考

http://blog.csdn.net/nyist327...

4. 要安装xcode,而且升级到最新版本
5. 安装的时候会提示xcode commond tool没有安装,而后给你一个命令,你要运行一下安装程序,而后要重启下机器
xcode-select --install
6. 若是没有关闭Rootless机制,会报错opration not premitted

我以前就关闭了,虽然是一个不错的安全策略,可是对开发者很不方便。
具体关闭步骤:

  1. 重启机器,在启动的时候长按command+R,进入恢复模式

  2. 打开terminal,执行

csrutil disable
  1. 重启机器到正常模式

7. 若是仍是编译失败,你能够把下载下来的mods的包解压,而后本身编译(反正我是成功了)

编译方式以下:(请使用sudo -i 切换到root用户下)

进行configration
./configure --prefix=/usr/local/Cellar/mod_security/2.9.1 --with-pcre=/usr/local/opt/pcre --with-apxs=/usr/sbin/apxs --with-apr=/usr/local/apr/bin/apr-1-config --with-apu=/usr/local/apr/bin/apu-1-config
make
在解压目录下执行 make
make install
在解压目录下执行 make install

检查是否编译成功并配置

  • 请检查/usr/local/Cellar/mod_security/2.9.1/lib下是否有mod_security2.so,如有则标识编译成功

  • 进行模块配置

1. vim /etc/apache2/httpd.conf
2. 配置载入模块:
LoadModule security2_module /usr/local/Cellar/mod_security/2.9.1/lib/mod_security2.so
3. 从源码目录复制配置文件到指定文件夹
cp modsecurity.conf-recommended /etc/apache2/other/modsecurity.conf

启动apache

sudo apachectl start

规则怎么配就靠你玩了,收工

相关文章
相关标签/搜索