看来我在 CentOS 7 服务器上的配置有冲突。
该问题出现在具有基本身份验证的 apache 2.4(httpd)上的 vhost 配置与 fail2ban apache-auth 禁止功能之间。
我想要两件事:
1)使用基本身份验证功能对访问我的各个网站进行身份验证。
2)使用 fail2ban 从 apache 错误日志文件中禁止 IP。
我的问题是:
如果我在 vhost 配置文件内的位置标记中有“拒绝所有”,那么我会提示进行身份验证,但是我在 apache 错误日志文件中有太多错误 --> “AH01797:服务器配置拒绝客户端”
但是,如果我将“拒绝全部”更改为“要求全部授予”,问题就会消失,但提示身份验证也很明显。
我怎样才能将这两个功能结合在一起而不发生冲突?
我希望这已经清楚了。如需任何其他信息,请询问。
答案1
我希望这是清楚的。
事实并非如此。要么问题是 fail2ban 无法识别AH01797: client denied
但你希望它发生(然后参见 P.1),要么反之亦然,它发现了但你不希望它发生(然后参见 P.2)
通常情况下,fail2ban 的 apache-auth 应该能够检测到这种故障。如果没有检测到,则可能是您的 fail2ban 版本(或配置文件)太旧,或者您的日志不同(将其与这或提供您的日志示例)。
如果你希望 fail2ban 忽略这一点,只需打开 /etc/fail2ban/filter.d/apache-auth.conf(进行备份)并删除该规则,例如最新版本它会是这样的:
- failregex = ^client (?:denied by server configuration|used wrong authentication scheme)\b
+ failregex = ^client (?:used wrong authentication scheme)\b