Gately v0.5.6 发布
2026 年 10 月 22 日
这一版新增「入侵防护」模块(#10),把 1Panel 里常用的 fail2ban 能力整合进 Gately:发现暴力破解与端口扫描的来源 IP,自动封禁,并在系统防火墙中丢弃它的流量。
下载 v0.5.6 · GitHub Release · 模块文档
入侵防护
- 日志规则:读取日志文件(自动跟随轮转)、systemd 日志、命令输出(如 OpenWrt 的
logread -f)或 Docker 容器日志,用正则与<HOST>找出失败记录,同一 IP 在统计窗口内达到次数即封禁。内置 SSH、Dropbear、Nginx、Vaultwarden、Home Assistant、Proxmox VE 等模板,编辑时可以粘贴日志样例直接测试; - Gately 事件:管理后台登录失败、WAF 拦截也能作为规则来源,不用写正则;
- 诱饵端口:在本机没有使用的端口上设下诱饵,任何来源一连接就封禁,正在监听的端口自动排除;
- 端口扫描检测:同一来源每分钟连接本机未开放端口超过阈值即封禁;
- 统一封禁表:手动封禁(支持 CIDR 网段与永久封禁)、Web 服务认证失败的自动封禁都在这里管理,重启后保留;同一地址再次被封禁时时长翻倍;
- 白名单:默认忽略内网、回环、100.64.0.0/10(Tailscale)与本机所在的 IPv6 /64 网段;
- 系统防火墙:封禁写入 nftables 中独立的
inet gately表,在内核层丢弃,发往 Docker 容器与内网设备的转发流量同样被拦截;本机主动访问被封地址(如 DNS)的回包不受影响。停止 Gately 时规则自动移除。
端口转发、Web 服务、STUN、WebDAV、FTP 与管理后台也会直接拒绝被封禁的地址。封禁会产生「入侵防护:IP 已被封禁」事件,可在通知中心订阅。
支持范围
- Linux 以 root 运行、飞牛 fnOS 安装包、OpenWrt 22.03 及以上:全部功能可用;
- Docker:需要 host 网络并授予
NET_ADMIN(cap_add: [NET_ADMIN]),镜像已内置 nftables; - Windows、macOS、FreeBSD,以及没有 nftables 或权限的 Linux:封禁只对 Gately 自身的服务生效,诱饵端口改由 Gately 监听,端口扫描检测不可用。页面顶部会显示原因与处理办法。
其他改进
- Docker 设置中显示 Docker 守护进程自己的镜像加速地址(
daemon.json中的registry-mirrors)(#11); - 修复开启定时备份时报
unknown field "hasPassword"的问题(#9); - 官网新增赞助页。
升级提示
- 升级方式:Linux 二进制在「关于」页直接升级;Docker 拉取新镜像后重建容器;飞牛在应用中心安装新版
.fpk;OpenWrt 安装新版.ipk/.apk。 - Docker 部署要启用防火墙层的封禁,请在 compose 中加入
cap_add: [NET_ADMIN]后重建容器;不加时其余功能照常使用。 - 以 root 运行的 Linux 实例升级后会自动创建
inet gately表;没有封禁时只有空规则,不影响现有流量。不需要时可在「入侵防护 → 设置」中关闭同步,或在「设置 → 功能模块」中关闭整个模块。 - Web 服务认证失败产生的封禁并入统一封禁表:开启防火墙同步后对整台主机生效;默认开启的「忽略内网地址」使内网地址不再被这类自动封禁。
- 站点经 CDN 回源、由请求头传递真实 IP 时,WAF 与认证失败封禁拿到的是 CDN 节点地址,这类站点不要启用相应规则。
- Docker 部署请使用 v0.5.6.1,它修复了 v0.5.6 镜像让宿主机上旧版 nft 崩溃的问题。