V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Nectar1899
V2EX  ›  信息安全

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

  •  
  •   Nectar1899 · 17 小时 57 分钟前 · 1485 次点击

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

    当前现状

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

    期望能力

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

    已完成的测试

    雷池( SafeLine )

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

    南墙( OpenWAF )

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

    想请教大家

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

    感谢分享 🙏

    19 条回复    2026-02-07 08:02:01 +08:00
    aminobody
        1
    aminobody  
       17 小时 55 分钟前
    反代上套一个 basic auth 就行了
    thereone
        2
    thereone  
       17 小时 48 分钟前
    路由器把 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  
       17 小时 26 分钟前
    如果只是自己的固定设备用,建议 mtls
    rfrftt
        4
    rfrftt  
       17 小时 2 分钟前
    NPM 部分服务开 basic auth, ssl 证书用 dns 挑战签发,ipv6 套免费 cdn 增加端口映射访问起来省了个端口号的输入
    蹲一个 `可用的 WAF 规则集` 解决这种服务漏洞防护工具
    VensonEEE
        5
    VensonEEE  
       16 小时 49 分钟前
    我有个很简单的做法,就是各种云的网络规则,基本都有 api
    写一个简单的接口就能做到添加特定的 ip 和端口,只要做前后端放服务器上,去调用这个接口,就能实现。
    1.自动获取本设备的公网 ip
    2.自动调用接口开通 ip 端口到白名单
    3.设定的时间自动删除这个规则禁止访问
    我设置的是两小时,一般情况下足够了。能防住 99.99%的扫描。
    要是能突破云防护或者程序的安全防护,那也算你牛皮。
    DefoliationM
        6
    DefoliationM  
       15 小时 49 分钟前 via Android
    不如 cloudflare 的 zerotrust+cloudflared ,自带 SaaS 验证。
    yinmin
        7
    yinmin  
       15 小时 41 分钟前
    最简单的方式:前置 nginx 开启双向证书认证 mtls
    janusec
        8
    janusec  
       15 小时 6 分钟前 via Android
    这个需求可以看下 https://github.com/Janusec/janusec ,自动解决证书申请和续期问题,有基本的 WAF 规则,开源。
    PrinceofInj
        9
    PrinceofInj  
       14 小时 59 分钟前 via Android
    在公网暴露端口就是为了方便,为了所谓的安全设置一大堆东西,跟暴露的初衷背道而驰。我认为能做得到就是及时更新对应的服务端,密码账号不要通用,及时关注所用服务端的安全性信息,做到这些即可。如果这些都做到了还是被攻击了,那就无话可说,自认倒霉。
    Goalonez
        10
    Goalonez  
       14 小时 51 分钟前
    我也是 lucky ,多集成了一个 authentik
    amorphobia
        11
    amorphobia  
       13 小时 40 分钟前
    cloudflared? 不过加上认证后那些基于 API 的应用似乎没办法直接用
    wonderfulcxm
        12
    wonderfulcxm  
       13 小时 27 分钟前 via iPhone
    cloudflared 的问题是慢!
    anonymity
        13
    anonymity  
       9 小时 58 分钟前
    @DefoliationM #6 CF 的这个 zerotrust 能给飞牛实现 SSO 吗
    luckjoe680
        14
    luckjoe680  
       9 小时 55 分钟前 via Android
    lucky 不是自带 waf 吗?
    zhouu
        15
    zhouu  
       9 小时 13 分钟前
    自部署的话应该就是 pangolin
    hanguofu
        16
    hanguofu  
       8 小时 12 分钟前 via Android
    谢谢总结
    🫡
    bear330
        17
    bear330  
       6 小时 39 分钟前
    你要不试试我的项目: https://github.com/nuwainfo/ffl ? 你随便指定一个想分享的资料夹它就变成 https 连结可以分享出去, 也可以设密码, 走 p2p (webrtc), 不想分享了就关掉就好, 而且也可以用 docker 跑不必怕被 hack 存取到不想分享的东西
    Cineray
        18
    Cineray  
       3 小时 25 分钟前
    > 支持 SSL 证书自动申请与续期, 具备 可用的 WAF 规则集

    这些不是 Lucky 都自带吗?
    Joeyreg
        19
    Joeyreg  
       15 分钟前
    我就简单了,直接上硬件防火墙了,飞塔 fortigate 找一台二手的桌面设备(如 30e 60e 60f 之类)几百块,记得看下原本 license 有没有 ips 授权,有就行,几块买个离线库更新一下,映射策略开启 ips ,能防住 99.999%的各种攻击
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   1443 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 558ms · UTC 00:17 · PVG 08:17 · LAX 16:17 · JFK 19:17
    ♥ Do have faith in what you're doing.