fail2ban 是一个用于防止暴力攻击的软件,它可以监控服务器上的日志文件来检测恶意行为,比如多次登录失败、对敏感目录的扫描等,并且可以根据配置自动采取行动,封禁那些显示出恶意行为的IP地址。下面是如何使用 fail2ban 来实现你提出的需求的简单指导。

  1. 安装 fail2ban

    • 在大多数Linux发行版上,你可以使用包管理器安装 fail2ban,例如在Ubuntu/Debian系统上,你可以使用以下命令:

      sudo apt-get update
      sudo apt-get install fail2ban
      
  2. 配置 fail2ban

    • fail2ban 的配置文件通常位于 /etc/fail2ban 目录。主配置文件是 jail.conf,但建议不要直接修改这个文件,而是创建一个本地的覆盖配置文件 jail.local

    • 例如,要防止CC攻击,你可以在 jail.local 文件中配置一个新的规则:

      [http-get-dos]
      
      enabled = true
      port = http,https
      filter = http-get-dos
      logpath = /var/log/apache2/access.log
      maxretry = 30
      findtime = 300
      bantime = 600
      action = iptables[name=HTTP, port=http, protocol=tcp]
      
  3. 创建过滤器

    • /etc/fail2ban/filter.d 目录下创建一个新的过滤器文件,比如 http-get-dos.conf,并定义规则以匹配恶意行为的日志模式。

      [Definition]
      failregex = ^<HOST> -.*"(GET|POST).*
      ignoreregex =
      
  4. 启动 fail2ban

    • 配置好了之后,你可以使用以下命令来启动或重启 fail2ban 服务:

      sudo systemctl start fail2ban
      sudo systemctl enable fail2ban
      sudo systemctl restart fail2ban
      
  5. 检查 fail2ban 状态

    • 你可以随时检查 fail2ban 的状态,看看有哪些IP被封禁了:

      sudo fail2ban-client status
      sudo fail2ban-client status http-get-dos

Q.E.D.

  • reword 您的打赏,就是俺创作的动力