经过飞牛事件,求分享具有一定安全性的 Web / WAF 方案 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Nectar1899
V2EX    信息安全

经过飞牛事件,求分享具有一定安全性的 Web / WAF 方案

  •  
  •   Nectar1899 5 小时 18 分钟前 787 次点击

    最近看到飞牛事件,开始认真审视自己对外发布服务的安全性,想向大家请教一些相对成熟、可落地的 Web / WAF 方案。

    当前现状

    • 通过 Lucky 作为反向代理对外发布应用
    • 对外暴露面较小,主要是自建服务( NAS / Web 等)

    期望能力

    1. 支持 SSL 证书自动申请与续期( ACME / Let’s Encrypt ,有尝试过 NPM 或者 cerd ,家庭缺少部分端口,似乎不太好用,也可以大佬分享下)
    2. 具备 可用的 WAF 规则集
    3. 偏向 自建 / 私有化部署 / 开源

    已完成的测试

    雷池( SafeLine )

    • 整体体验不错,拦截能力和规则集都比较成熟
    • 但日志、分析等关键能力基本在 Pro 版本
    • 对个人 / 自建环境来说 pro 成本偏高,最终放弃

    南墙( OpenWAF )

    • 能用,部署和使用相对轻量
    • 可控性略弱 ,毕竟不是专业的从业人员。
    • 日常防护可以,但整体不够“顺手”

    想请教大家

    • 是否有更合适的 Web / WAF 方案推荐?
    • 是否有实际长期运行的经验分享(误报率、维护成本、性能等)?
    • 如果是「反向代理 + WAF + 自动证书」这一套,大家目前都怎么组合?

    感谢分享

    12 条回复    2026-02-06 18:49:33 +08:00
    aminobody
        1
    aminobody  
       5 小时 16 分钟前
    反代上套一个 basic auth 就行了
    thereone
        2
    thereone  
       5 小时 9 分钟前
    路由器把 IP 地址限制到你们城市或者省才能访问或者最大范围仅中国 IP 访问。挂上 WAF 把 IP 地址限制打开,用户认证打开,黑名单和白名单都打开人机验证打开。搞到非常难访问的程度基本就没有问题了。

    web 应用-->NGINX 反代(开启基本认证)--->WAF(IP 地址限制到你们省市,黑名单常用封禁国内爬虫恶意 IP ,CC 和人机验证打开,用户认证打开)--->出口路由器(限制访问为国内 IP 地址访问,开启国内爬虫和恶意 IP 封堵)--->公网

    你想用首先得是国内正常 IP--->进入出口路由器--->过 WAF 的省内 IP 认证-->人机验证-->CC 防护-->用户认证-->攻击防护---->过 NGINX 反代基本认证--->再到 web 应用。

    上了上面这套想要从外部攻破 首先得是国内的 IP 来攻击的,二是的攻破 WAF 的各项防护,在攻破 NGINX 的基本认证防护,最后才是 web 应用的。
    可以选择性的打开或者关闭某些防护,根据你的实际需求来做。
    我这边把除了 NGINX 的基本防护关闭了,别的全部都打开了。现在没有任何问题包括外部扫描都没有了,除了国内两个省的 IP 地址可以访问别的都不行。
    JKOR
        3
    JKOR  
       4 小时 47 分钟前
    如果只是自己的固定设备用,建议 mtls
    rfrftt
        4
    rfrftt  
       4 小时 23 分钟前
    NPM 部分服务开 basic auth, ssl 证书用 dns 挑战签发,ipv6 套免费 cdn 增加端口映射访问起来省了个端口号的输入
    蹲一个 `可用的 WAF 规则集` 解决这种服务漏洞防护工具
    VensonEEE
        5
    VensonEEE  
       4 小时 10 分钟前
    我有个很简单的做法,就是各种云的网络规则,基本都有 api
    写一个简单的接口就能做到添加特定的 ip 和端口,只要做前后端放服务器上,去调用这个接口,就能实现。
    1.自动获取本设备的公网 ip
    2.自动调用接口开通 ip 端口到白名单
    3.设定的时间自动删除这个规则禁止访问
    我设置的是两小时,一情况下足够了。能防住 99.99%的扫描。
    要是能突破云防护或者程序的安全防护,那也算你牛皮。
    DefoliationM
        6
    DefoliationM  
       3 小时 9 分钟前 via Android
    不如 cloudflare 的 zerotrust+cloudflared ,自带 SaaS 验证。
    yinmin
        7
    yinmin  
       3 小时 2 分钟前
    最简单的方式:前置 nginx 开启双向证书认证 mtls
    janusec
        8
    janusec  
       2 小时 27 分钟前 via Android
    这个需求可以看下 https://github.com/Janusec/janusec ,自动解决证书申请和续期问题,有基本的 WAF 规则,开源。
    PrinceofInj
        9
    PrinceofInj  
       2 小时 20 分钟前 via Android
    在公网暴露端口就是为了方便,为了所谓的安全设置一大堆东西,跟暴露的初衷背道而驰。我认为能做得到就是及时更新对应的服务端,密码账号不要通用,及时关注所用服务端的安全性信息,做到这些即可。如果这些都做到了还是被攻击了,那就无话可说,自认倒霉。
    Goalonez
        10
    Goalonez  
       2 小时 12 分钟前
    我也是 lucky ,多集成了一个 authentik
    amorphobia
        11
    amorphobia  
       1 小时 1 分钟前
    cloudflared? 不过加上认证后那些基于 API 的应用似乎没办法直接用
    wonderfulcxm
        12
    wonderfulcxm  
       48 分钟前 via iPhone
    cloudflared 的问题是慢!
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2079 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 11:38 PVG 19:38 LAX 03:38 JFK 06:38
    Do have faith in what you're doing.
    ubao msn 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