根据客户端名称阻止 CentOS 上的特定客户端

根据客户端名称阻止 CentOS 上的特定客户端

我查看了我的 Apache 访问日志,发现有来自多个 IP 范围的可疑活动。它们的共同点是都被标识为“Allegro-Software-WebClient/4.07”。

有没有办法可以为 apf 或类似程序创建一条规则来执行以下操作:

DROP ALL CLIENTS IF NAME STARTS WITH "Allegro"

答案1

防火墙要做到这一点,必须支持 HTTP 协议检查,而大多数防火墙(如果不是全部)都不支持该协议。防火墙通常检查较低层。

我建议在 apache 前面安装一个类似 squid 的代理。然后,您可以将其配置为根据用户代理(在 squid 中称为浏览器)拒绝访问。

acl aclname browser [-i] regexp ...

代理服务器还有助于缓存,从而提高服务器的性能。

相关内容