mod_security 似乎不再存在于 Debian 存储库中。安装似乎相当复杂。我唯一能找到的是佐普,这看起来更加复杂。
因此我想询问最新的 mod_security 操作方法或替代解决方案。
非常感谢!
答案1
您正在使用哪个版本的 debian。libapache-mod-security 在 lenny-backports 中可用。
答案2
我有 CentOS,我在一两个月前编译了它,所以你可能需要调整它。mod_security2.5 是新版本http://www.modsecurity.org/。
您需要 liblua readline-dev 和 ncurses dev 以及 libxml2。
aptget install readline-dev ncurses-dev libxml2 libxml2-dev
我必须从源代码制作 Lua,因为 CentOS 在默认存储库中没有它:
wget http://www.lua.org/ftp/lua-5.1.tar.gz
tar -xvf lua-5.1.tar.gz
cd lua-5.1
make linux && make install
gcc -shared -o /usr/local/lib/liblua.5.1.3.so /usr/local/lib/liblua.a # Compile liblua library into a Shared Object for Apache to use
Mod_security2
wget http://www.modsecurity.org/download/modsecurity-apache_2.5.12.tar.gz
tar -xvf modsecurity-apache_2.5.12
cd modsecurity-apache_2.5.12
cd apache2
./configure
make && make install
cd ../
mkdir /etc/httpd/modsecurity.d
cp modsecurity.conf-minimal /etc/httpd/modsecurity.d/mod_security_minimal.conf # Copy the minimal rule set to our configuration
您需要修改 Apache 配置以加载 liblua 和 libxml2。请注意,这是 LoadFile 而不是 Load Module。/etc/httpd/conf/httpd.conf
LoadFile /usr/lib/libxml2.so
LoadFile /usr/local/lib/liblua.5.1.3.so
你可能希望让你的规则保持井然有序:
Include modsecurity.d/*.conf
为了进一步配置,请在 modsecurity.d 目录中添加您自己的规则集,您也可以从上面提取的 mod_security 文件夹复制您想要的任何默认规则集rules
。
需要重新启动 httpd。