本帖最后由 sogbtt 于 2026-5-31 09:51 编辑
🛡️ OpenWrt-BlockadeIP
基于 iptables raw PREROUTING + ipset 的 OpenWrt / ImmortalWrt 早期入站封禁 LuCI 插件
📌 项目简介
OpenWrt-BlockadeIP 是一款面向 OpenWrt / ImmortalWrt 的早期入站封禁 LuCI 插件。
它基于 iptables raw PREROUTING + ipset 实现,在数据包进入路由器的最早阶段,对高风险来源 IP 进行快速丢弃。
适用于以下场景:
- SSH 爆破
- LuCI 登录爆破
- WEB 后台高频异常访问
- 端口转发 / DNAT 场景下的来源 IP 快速封禁
- 公开威慑页展示被拦截来源
- Bark 推送封禁通知
开源项目地址:
https://github.com/sogbtt/openwrt-blockadeip-ipk
✅ 快速判断你的系统是否适合安装
在 OpenWrt / ImmortalWrt 终端执行:
- curl -fsSL https://raw.githubusercontent.com/sogbtt/openwrt-blockadeip-ipk/refs/heads/main/check-env.sh | sh
复制代码
检测脚本只做环境兼容性检测:
- 不安装插件
- 不修改 BlockadeIP 配置
- 不持久化防火墙规则
- 仅创建临时 ipset / 临时 raw 测试规则,并在结束后自动清理
🧩 适用环境说明
1. 已验证环境
| 项目 | 已验证环境 | | 系统 | OpenWrt 24.10.0 | | 内核 | Linux 6.12.18 | | 架构 | x86/64 | | Web 服务 | nginx / luci-nginx | | 防火墙环境 | iptables v1.8.10 (nf_tables) 兼容模式 | | 封禁后端 | iptables raw + ipset | | LuCI | LuCI 25.x / Argon 主题 |
2. 推荐环境
| 项目 | 推荐要求 | | 系统 | OpenWrt / ImmortalWrt 23.05+ / 24.10+ | | 架构 | x86/64、rockchip/armv8、armsr/armv8 等 | | 防火墙 | 支持 iptables raw 表 | | 高性能集合 | 支持 ipset | | 日志系统 | 支持 logread / logger | | Web 管理 | LuCI + rpcd | | 公开页 | /www 目录可被 nginx / uhttpd / openresty 访问 |
3. 预计可用场景
| 场景 | 预计支持情况 | | 传统 iptables 防火墙 | 支持,前提是 raw 表和 ipset 可用 | | firewall4 / nftables 系统 | 支持,前提是 iptables-nft 兼容层可正常使用 raw + ipset | | iptables v1.8.x (nf_tables) | 推荐,已验证 | | LuCI 跑在 nginx / luci-nginx | 支持,已验证 | | LuCI 跑在 uHTTPd | 理论支持,公开页放在 /www/blockadeip/ | | 端口转发 / DNAT 场景 | 支持,这是本项目重点场景 | | Docker / OpenResty / Alist / WebDAV 暴露在公网 | 可通过日志关键词扩展识别 |
4. 不适用或需谨慎的环境
| 环境 | 说明 | | 无 iptables raw 表 | 不建议使用,核心早期封禁能力不可用 | | 无 ipset | 不建议使用,会失去高性能集合封禁能力 | | 极简固件缺少 rpcd / LuCI | 核心脚本可能可用,但 LuCI 面板不可用 | | 非 OpenWrt 系统 | 不保证可用 | | 纯 nftables 且完全无 iptables 兼容层 | 暂不作为主要支持目标 | | 不理解公网管理口风险的环境 | 不建议暴露 LuCI / SSH 到公网 |
🖼️ 项目截图
LuCI 管理面板
已封禁列表
公开处刑页
Bark 推送配置
LuCI 登录页入口按钮
🎯 项目定位
OpenWrt-BlockadeIP 不是传统意义上的 firewall4 规则管理器,也不是 banIP 的替代品。
它的定位是:
在数据包进入路由器的最早阶段,通过 raw PREROUTING 对高风险来源 IP 进行快速丢弃,绕开复杂 zone / forward / DNAT 链路带来的命中不确定性。
适合这类用户
- 有公网 IP / DDNS
- 暴露过 SSH、LuCI、ttyd、WebDAV、Alist、OpenResty、Docker 服务
- 遇到过端口转发后普通防火墙规则不生效
- 想要 LuCI 可视化管理封禁 IP
- 想要公开威慑页展示被拦截来源
- 想要 Bark 推送封禁通知
⚠️ 使用提醒
- 本项目用于增强公网暴露服务的防护能力,但不等于可以放心暴露管理后台。
- 强烈建议 SSH / LuCI / WebDAV / Alist 等服务尽量不要直接暴露公网。
- 如必须公网访问,建议配合强密码、密钥登录、非默认端口、访问控制、反向代理鉴权等方式使用。
- 手动封禁 IP 前,请确认不会误封自己的网关、内网管理 IP 或可信访问来源。
如果你正在被 SSH / LuCI / Web 后台爆破骚扰,BlockadeIP 的目标就是:更早、更快、更直接地把异常来源挡在外面。
|