当 Fail2ban 触发 IP 禁止操作时,我想阻止我的 Ubuntu 服务器上的所有端口。现在,我使用banaction = iptables-allports
和 CSF。此时它只阻止了 SSH 端口,即使我iptables-allports
在 fail2ban 中使用。
我在 Cloudflare 反向代理后面遇到这个问题站点。
这是一个 Ubuntu 18.04 Nginx 服务器。我可以在 nginx 日志文件中查看访问者的 IP 地址。所以我相信X-Forwarded-For
nginx 配置中的这个 VPS 可以按预期工作。
当我通过 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
您不能在 iptables 中阻止这些连接,因为这些 IP 地址不会连接到您的服务器。相反,它们连接到 CloudFlare,而 CloudFlare 连接到您的服务器。因此,iptables 只能看到 CloudFlare IP 地址。
相反,您需要使用 Web 服务器软件或 CloudFlare 提供的 IP 地址控制。