Repolode
swissmakers

swissmakers/fail2ban-ui

用于集中管理一台或多台 Linux 主机上 Fail2Ban 的 Web 管理平台。

Star
381
Fork
42
未关闭 Issue
4
最近提交
9天前

这是什么?

Fail2Ban UI 为运行在一台或多台 Linux 主机上的 Fail2Ban 提供统一的管理界面。它不替代 Fail2Ban,封禁决策仍由各主机上的 Fail2Ban 守护进程完成;UI 通过连接这些实例,集中展示活动 jail 和近期封禁、解封记录,并支持跨服务器搜索与解封。

UI 可通过本地连接器、SSH 连接器或 HTTP agent 管理主机。各主机上的自定义 Fail2Ban action 会把封禁和解封事件回传到 UI,UI 负责保存事件、通过 WebSocket 实时推送到浏览器,并触发告警。此外还支持在线编辑远程 jail 和 filter 配置、用日志行测试 filter 正则,以及在 MikroTik、pfSense、OPNsense、UniFi 防火墙上执行永久封禁。

项目以单个 Go 二进制文件形式发布,可用容器或 systemd 服务运行,并支持 OIDC 登录。告警可通过邮件、Webhook 或 Elasticsearch 发送。

核心功能

  • 01集中仪表盘,通过 WebSocket 实时显示活动 jail 与封禁、解封事件
  • 02跨所有 jail 和服务器搜索并解封 IP 地址
  • 03远程管理 jail 和 filter 配置,并支持错误配置自动恢复
  • 04用实时日志样本测试 filter 正则
  • 05在 MikroTik、pfSense、OPNsense、UniFi 上执行永久封禁与重复攻击者处理
  • 06支持邮件、Webhook、Elasticsearch 告警,并附带 GeoIP/Whois 信息

适用场景

  • 在一个浏览器界面中管理多台 Linux 服务器上的 Fail2Ban
  • 无需登录每台主机即可查看并解封 IP
  • 在部署到生产 jail 前测试 filter 正则
  • 把反复攻击的 IP 作为永久封禁同步到防火墙

快速上手

  1. 1

    使用本地连接器运行容器

    podman run -d --name fail2ban-ui --network=host \ -v /opt/fail2ban-ui:/config:Z \ -v /etc/fail2ban:/etc/fail2ban:Z \ -v /var/run/fail2ban:/var/run/fail2ban \ -v /var/log:/var/log:ro \ swissmakers/fail2ban-ui:latest
  2. 2

    在浏览器中打开 http://localhost:8080

  3. 3

    进入 Settings -> Manage Servers,启用本地连接器并点击 Test connection

使用前须知

  • 需要在 Linux 主机上已安装 Fail2Ban,本项目不能替代它。
  • SSH 连接器需要专用服务账户并配置 sudo 规则,设置有一定工作量。
  • 建议放在反向代理、VPN 或防火墙之后,而不要直接暴露在公网上。

标签

常见问题

fail2ban-ui 是什么?
用于集中管理一台或多台 Linux 主机上 Fail2Ban 的 Web 管理平台。 Fail2Ban UI 为运行在一台或多台 Linux 主机上的 Fail2Ban 提供统一的管理界面。它不替代 Fail2Ban,封禁决策仍由各主机上的 Fail2Ban 守护进程完成;UI 通过连接这些实例,集中展示活动 jail 和近期封禁、解封记录,并支持跨服务器搜索与解封。
fail2ban-ui 可以免费使用吗?用的什么许可证?
fail2ban-ui 以 AGPL-3.0 许可证开源。用于商业产品前,请先确认许可证条款。
fail2ban-ui 还在维护吗?
活跃维护中。fail2ban-ui 最近一次提交是在 2026年10月11日。
fail2ban-ui 适合用来做什么?
在一个浏览器界面中管理多台 Linux 服务器上的 Fail2Ban 无需登录每台主机即可查看并解封 IP 在部署到生产 jail 前测试 filter 正则 把反复攻击的 IP 作为永久封禁同步到防火墙
fail2ban-ui 怎么安装和运行?
使用本地连接器运行容器: podman run -d --name fail2ban-ui --network=host \ -v /opt/fail2ban-ui:/config:Z \ -v /etc/fail2ban:/etc/fail2ban:Z \ -v /var/run/fail2ban:/var/run/fail2ban \ -v /var/log:/var/log:ro \ swissmakers/fail2ban-ui:latest 在浏览器中打开 http://localhost:8080 进入 Settings -> Manage Servers,启用本地连接器并点击 Test connection
在哪里获取 fail2ban-ui?
源代码和安装说明在 GitHub 上:https://github.com/swissmakers/fail2ban-ui

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目