一个基于 nftables 管理服务器防火墙的 Web 图形面板 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
Fifto
V2EX    Linux

一个基于 nftables 管理服务器防火墙的 Web 图形面板

  •  
  •   Fifto 174 天前 2111 次点击
    这是一个创建于 174 天前的主题,其中的信息可能已经有所发展或是发生改变。

    GNftato Panel - 多服务器防火墙规则管理面板

    基于 Nftato.sh 脚本开发的可视化多服务器防火墙规则管理面板,支持通过 SSH 远程连接管理多台服务器的 nftables 规则。

    不建议使用关键词封禁功能( iptables 实现),效率很低,会导致某些应用连接超时

    项目地址->github 仓库

    功能特色

    • 多服务器管理:集中管理多台服务器的防火墙规则
    • 出网控制:封禁/解封 BT 、PT 、SPAM 、自定义端口和关键词
    • 入网控制:管理入网端口和 IP 白名单
    • SSH 远程控制:通过 SSH 安全连接到远程服务器执行命令
    • 可视化操作:直观的界面操作替代复杂的命令行管理
    • 状态监控:实时查看各服务器的连接状态和规则列表
    • 登录认证:用户身份验证,保护管理界面安全
    • DDOS 防御:借鉴 Goedge 防御规则实现的脚本防御(基础防御)

    需要注意,使用同类用到 nftables 命令的工具会使规则冲突。清除规则则可以夺回控制权。脚本首次运行默认只放行 ssh 端口,且 ssh 端口无法取消放行。

    技术栈

    • 后端:Node.js 、Express 、SSH2 、本地 JSON 存储、JWT 认证
    • 前端:Vue.js 2.x 、Element UI 、Axios 、Vuex 状态管理
    • 通信:RESTful API
    • 认证:基于 JWT 的用户认证系统

    系统要求

    • Node.js 12.x 以上
    • 远程服务器需支持 SSH 连接

    功能说明

    放行 IP 与 IP 黑白名单的区别

    系统提供两种 IP 管理功能,它们服务于不同的目的:

    1. 放行 IP (入网方向功能 - 第 17 项)

      • 作用于基本防火墙层面,控制哪些 IP 可以访问服务器
      • 如果服务器防火墙默认策略是拒绝(DROP),只有被放行的 IP 才能建立连接
      • 未被放行的 IP 会被基本防火墙直接拒绝访问
      • 命令实现: nft add rule inet filter input ip saddr $IP accept
    2. IP 黑白名单 (DDoS 防御功能 - 第 24 项)

      • 作用于 DDoS 防御层面,位于基本防火墙之后
      • 白名单 IP: 可以绕过 DDoS 防御检测,不受连接频率和数量限制
      • 黑名单 IP: 被直接拒绝,不论连接次数和频率
      • IP 必须先通过基本防火墙(被放行或防火墙默认允许),才会到达 DDoS 防御层

    使用建议:

    • 如果服务器设置为默认拒绝所有连接,需要先使用"放行 IP"功能
    • 如果已开启 DDoS 防御,对于需要频繁访问的可信 IP ,建议添加到白名单
    • 如果只需简单的访问控制,使用"放行 IP"即可
    • 如果需要防御 DDoS 攻击同时允许特定 IP 不受限制,应使用白名单功能

    其他功能说明

    xuemian
        1
    xuemian  
       174 天前
    不错,支持一下。我最近也在尝试开发开源 EDR
    privil
        2
    privil  
       174 天前   4
    ……你这是用 AI 快速开发的?隔了几个小时你就从 iptables 到 nftables 了,发出来找小白鼠趟雷是吗?
    Fifto
        3
    Fifto  
    OP
       174 天前 via iPhone   1
    @privil 觉得是雷你可以不看,为什么不能用 ai ,自己菜就多练。你凭什么认为别人发出来之前没有测试?(无语
    hello333
        4
    hello333  
       174 天前   1
    @Fifto +1
    ExplodingDragon
        5
    ExplodingDragon  
       174 天前
    不错的项目,挺适合批量管理大量服务器的

    初步看了一眼,好像没有任何测试用例覆盖 ....
    Fifto
        6
    Fifto  
    OP
       171 天前 via iPhone
    @ExplodingFKL 实在没精力考虑太多,抱歉,等以后有时间再完善。现在只想把功能能正常跑就好了
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2718 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 08:46 PVG 16:46 LAX 01:46 JFK 04:46
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86