fail2ban ban 了 IP,还是能访问是为什么?

3 天前
 CSGO
我用 docker 运行了 vaultwarden:

services:
vaultwarden:
image: vaultwarden/server:latest
container_name: vaultwarden
restart: always
ports:
- "127.0.0.1:8001:80"
volumes:
- ./:/data/
- /etc/localtime:/etc/localtime:ro
environment:
- LOG_FILE=/data/log/vaultwarden.log

然后用 Nginx 的反向代理 bitwarden.XXX.com 可以访问,套了 cloudflare CDN 。
配置 fail2ban 之后,测试了故意输入错误密码后,能 ban 到 IP:

Status for the jail: vaultwarden
|- Filter
| |- Currently failed: 1
| |- Total failed: 5
| `- File list: /home/Wi-Fi/Bitwarden/log/vaultwarden.log
`- Actions
|- Currently banned: 1
|- Total banned: 1
`- Banned IP list: 158.101.132.372

但是依然能访问,这是为什么?
1963 次点击
所在节点    Linux
11 条回复
billlee
3 天前
因为 fail2ban 默认调用的是系统防火墙,系统防火墙看到的 IP 都是 Cloudflare 服务器的 IP.
Nt6Z1g
2 天前
fail2ban 可以用 cloudflare 的模块调用 API 封 IP
ruanimal
2 天前
套了 cloudflare ,ip 就会一直变吧,你 ban 的是 cloudflare 的 ip ,ban 了个寂寞
KousukeSakurako
2 天前
试试自定义一下 ban action ,让它能把规则插到 DOCKER-USER 里
xyfan
2 天前
你都说了套 CDN ,ban 来 ban 去,ban 的是衣服不是人
julyclyde
2 天前
你这个 docker 是做了 NAT 吧
fail2ban 是在 INPUT 封的吧,你这个 NAT 是不经过 INPUT 的吧?
yokisama
1 天前
不如在 cloudflare 的 WAF 直接屏蔽它的 ip
让 AI 写个脚本,读取 bw 的日志,加入到黑名单就好了
你只 ban 回源 ip 没用
bingfengfeifei
1 天前
如果功能没问题的话,可能是当前的会话没断,阻断的仅仅是新建连接,当前的连接不会断。
我没用过这个不太清楚是不是这个原因,只是之前遇到过类似的问题,是这种原因导致。
laminux29
1 天前
这是 Docker 的安去漏洞,知道这个事情的人很少:

https://www.v2ex.com/t/1147750
datocp
1 天前
当年测试防火墙似乎是默认
iptables -P INPUT ACCEPT
lifansama
1 天前
你的 banaction 是使用的哪一种?换成 iptables-allports 试试?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1158816

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX