V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
glouhao
V2EX  ›  问与答

fail2ban 加了 cdn 怎么 ban

  •  
  •   glouhao · 2022-12-30 04:07:57 +08:00 via Android · 1139 次点击
    这是一个创建于 721 天前的主题,其中的信息可能已经有所发展或是发生改变。
    诸位大神,套了 cdn 应该是只能通过 cdn 屏蔽 ip 才管用了吧?网上只找到了配合 cf 的用法。有么有配合别的 cdn 的用法呢?比如亚马逊的 cft 国内速度该可以,还有国内的各种 cdn ,有没有接口可以用?
    dingwen07
        1
    dingwen07  
       2022-12-30 07:36:21 +08:00 via iPhone
    fail2ban 不是防止暴力破解密码的吗
    但是实践中应该禁止密码登录的
    AS4694lAS4808
        2
    AS4694lAS4808  
       2022-12-30 07:50:19 +08:00 via Android
    这种情况不应该用 fail2ban 。虽然设置一下 log 格式可以从 nginx 的 access_log 里区分出流量类型,但是设置比较麻烦,而且会造成所有外部访问的 ip 直接被完全屏蔽掉。合理的方式是检查来源的 http 头,比如 aws cf 的 OAI 头,其他的参考各云厂商的文档。主要原理是 cdn 收到请求后会在请求中加内部头给源检验,这个头类似于约定好的静态 token ,有的也可以改成动态的。
    glouhao
        3
    glouhao  
    OP
       2022-12-30 08:03:55 +08:00 via Android
    @dingwen07 是的呢,防止 wp 被破解外加 4xx 之类的乱七八糟请求。
    glouhao
        4
    glouhao  
    OP
       2022-12-30 08:37:06 +08:00
    试了下,ssh 换了端口还是检测的,还是会加到 ban 列表里,默认规则好像还是封 22 ,需要修改下。但是没必要,一晚上就我自己测试的被封了。换端口真的不错。
    msg7086
        5
    msg7086  
       2022-12-30 10:32:37 +08:00
    @dingwen07 不是。fail2ban 是通过规则匹配「 fail 」然后执行「 ban 」的软件,从来不是只能用于防止破解密码的。
    只要你有办法定义「 fail 」的规则和「 ban 」的动作就行。
    比如你写了个搜索引擎 API ,但是搜索小电影的你想要 ban 掉,那么就可以用 rule 去检查 nginx 的 access log ,找到搜索 /\w+-\d+/的访问记录,然后把 IP 加到 iptables 列表里 drop 掉。
    glouhao
        6
    glouhao  
    OP
       2022-12-30 13:44:51 +08:00 via Android
    @msg7086 大佬有没有国内 cdn 解决方案
    msg7086
        7
    msg7086  
       2022-12-30 14:33:41 +08:00
    @glouhao 抱歉不太清楚。
    revlis7
        8
    revlis7  
       2022-12-30 15:35:50 +08:00
    gdefw
        9
    gdefw  
       2023-02-18 15:01:13 +08:00
    @revlis7 试了一下,nginx 中记录的 log 里确实是真实 ip ,这样 fail2ban ban 的 ip 也是真实的,但实际请求的 ip 是 cdn 代理过的,还是封不了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1011 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 20:59 · PVG 04:59 · LAX 12:59 · JFK 15:59
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.