自动封锁请求特定 URL 的 IP

自动封锁请求特定 URL 的 IP

我们的一个客户的 PHPBB(令人惊讶)被黑客入侵了。我暂时通过简单地更改目录名称将其删除,但该地址example.com/forum/*仍然受到来自恶意 IP 的攻击。服务器在 CentOS 机器上运行 Apach。

我不是专家,但我想自动阻止任何访问目录的 IP 发出的所有 http/s 请求。有没有简单的解决方案?我确实有 root shell 访问权限。

答案1

这将是一份工作失败禁止。您可以使用它来扫描日志文件中的特定表达式,并根据这些结果使用 iptables 进行阻止。

尽管您可能必须添加可选存储库,但 fail2ban 应该在大多数发行存储库中可用。

答案2

来自 OP 的解决方案

就是这样:

  1. 通过 SSH 连接到你的服务器
  2. 因为我在 CentOS 中,cd /tmp
  3. 因为我在 CentOS 中,rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-7.noarch.rpm
  4. yum install fail2ban
  5. 编辑/etc/fail2ban/jail.conf并添加..

    [apache-banforum]
    enabled = true
    filter  = apache-banforum
    logpath = /usr/local/apache/domlogs/website/website.co.uk <-- change to your log file
    maxretry = 1
    bantime = 60000
    action = iptables-multiport[name=BanForum, port="http,https"]
    
  6. apache-banforum.conf使用/etc/fail2ban/filter.d/以下命令创建文件

    failregex = ^<HOST> -.*"(GET|POST).*/forum/.*$
    ignoreregex =
    
  7. /etc/init.d/fail2ban start

答案3

您可以在论坛目录中创建一个 .htaccess 文件,并将以下几行放入其中,这可能有助于通过访问来保护该 url。

Order allow,deny Deny from all

相关内容