我查看了我的 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 ...
代理服务器还有助于缓存,从而提高服务器的性能。