Iptables

iptables - 丟棄所有 HTTP(S) 流量,但來自 CloudFlare

  • November 7, 2012

我想只允許來自 CloudFlare 的 HTTP(S) 流量。這樣,攻擊者就無法直接攻擊伺服器。我知道 CloudFlare 主要不是 DDoS 緩解器,但我想嘗試任何一種方式。

我目前只能訪問 iptables(僅限 ipv4),但很快會嘗試安裝 ip6tables。我只需要盡快解決這個問題。(我們得到 (D)DoSed atm。)

我在想這樣的事情:

iptables -I INPUT -s <CloudFlare IP> --dport 80 -j ACCEPT
iptables -I INPUT -s <CloudFlare IP> --dport 443 -j ACCEPT
iptables -I INPUT -p tcp --dport 80 -j DROP
iptables -I INPUT -p tcp --dport 443 -j DROP

我知道 CloudFlare 有多個 IP,但這只是一個例子。

這是正確的方法嗎?

是的,那會奏效。你也可以用!像這樣否定:

iptables -I INPUT ! -s <cloud_flare ip> -p tcp --dport 80 -j DROP
iptables -I INPUT ! -s <cloud_flare ip> -p tcp --dport 443 -j DROP

引用自:https://serverfault.com/questions/446233