当 Fail2ban 触发 IP 禁止操作时,我想阻止我的 Ubuntu Server 上的所有端口。现在,我使用banaction = iptables-allports
CSF。目前它只阻止了 SSH 端口,即使我iptables-allports
在 fail2ban 中使用。
我在 Cloudflare 反向代理后面的站点遇到了这个问题。
这是一台 Ubuntu 18.04 Nginx 服务器。我可以在 nginx 日志文件中查看访问者的 IP 地址。因此我相信此 VPSX-Forwarded-For
在 nginx 配置中可以按预期工作。
当我通过 SSH 手动将 IP 地址添加到 CSF 临时禁止列表时,它现在不再阻止 HTTP 和 HTTPS 端口。此服务器支持 IPv4 和 IPv6。
当我搜索被阻止的IP时,它显示以下结果。
root@server:~# csf -g 43.250.242.xxx
Table Chain num pkts bytes target prot opt in out source destination
filter TOR 174 22 1320 REJECT all -- * * 43.250.242.xxx 0.0.0.0/0 reject-with icmp-port-unreachable
filter TOR 2 0 0 REJECT all -- * * 43.250.242.xxx 0.0.0.0/0 reject-with icmp-port-unreachable
filter TOR 6 0 0 REJECT all -- * * 43.250.242.xxx 0.0.0.0/0 reject-with icmp-port-unreachable
IPSET: Set:cc_lk Match:43.250.242.xxx Setting:CC_ALLOW_PORTS Country:LK
ip6tables:
Table Chain num pkts bytes target prot opt in out source destination
No matches found for 43.250.242.xxx in ip6tables
答案1
您无法在 iptables 中阻止这些连接,因为这些 IP 地址不连接到您的服务器。相反,它们连接到 CloudFlare,而 CloudFlare 连接到您的服务器。因此,iptables 只能看到 CloudFlare 的 IP 地址。
相反,您需要使用 Web 服务器软件或 CloudFlare 提供的 IP 地址控制。