我有 Debian 9 和 Apache/2.4.29 (带有 Moodle 的 Bitnami 设备)。我正在尝试使用 mod_evasive 和 mod_security 模块来保护 Web 服务器的安全。我安装了模块:
apt-get install libapache2-mod-evasive
但当我跑步时
apacheclt -M | grep eva
没有回避模块。我可以在 /usr/lib/apache2/modules 中看到模块 mod_evasive20.so 。是否可以以某种方式启用该模块?谢谢
编辑:我只是跑步
service --status-all
列出所有正在运行的服务及其状态,这是输出:
[ - ] acpid
[ + ] atd
[ + ] bitnami
[ + ] cron
[ + ] exim4
[ + ] haveged
[ - ] hwclock.sh
[ - ] irqbalance
[ + ] kmod
[ + ] networking
[ + ] open-vm-tools
[ + ] procps
[ + ] proftpd
[ - ] screen-cleanup
[ + ] ssh
[ - ] sudo
[ + ] syslog-ng
[ + ] udev
[ + ] ufw
[ - ] x11-common
如您所见,没有 apache 或 apache2 服务。这是正常的吗?
编辑:昨天我用 mod_evasive 安装了干净的 Debian 9,第一次尝试一切正常,所以这是因为 bitnami 和文件夹结构的差异。
答案1
通常您可以通过命令启用 apache2 模块:
a2enmod module_name
关于 mod_evasive20 - 我在尝试使其以任何方式工作时遇到了非常严重的问题,并在 Apache 2.4 的源代码形式中找到了该模块的较新版本。这就是问题所在 - old=stable=repo 版本最适合 Apache 2.0。
您需要apache2-dev
通过命令安装包并编译模块:
apxs -i -a -c mod_evasive24.c
然后你需要为其创建配置文件并重新启动apache以使其工作。