Ipset
iptables… 阻止範圍而不用 IP 淹沒 ipset 集
我有這個範圍的 IPS 197.192.xx 日復一日地暴力攻擊我的 pop/imap/smtp 伺服器。
我有這個 ipset 可以阻止每個試圖入侵我的伺服器的 IP。
我想阻止所有以 197.192 開頭的 IP 對 pop/smtp/imap 的訪問
為此,我輸入了以下命令:
ipset -A myIpset 197.192.0.0/24
但這為我的 ipset 添加了 65536 個 IP,使其變得巨大,現在我無法向其添加更多 IP。
有沒有另一種更優雅的方式來做到這一點?
您可以添加另一個 ipset 來阻止,這次是 type
hash:net
,然後將 197.192.0.0/16 添加到該 ipset。或者將您的 ipset 替換為一種類型,hash:net
因為hash:net
它也可以儲存 IP 地址(網路遮罩 32)。從 轉換
hash:ip
為hash:net
:ipset save myIpset > myIpset && ipset destroy myIpset && sed s/:ip/:net/ myIpset | ipset restore && ipset add myIpset 197.192.0.0/16
您不能為此使用 ipset;iptables 可以很容易地匹配網路:
iptables -I INPUT -s 197.192.0.0/16 p tcp --dports smtp,imap,pop3 -j DROP
或類似的。
順便說一句:您是否按照 AfriNIC Whois 的要求向 ip.abuse@etisalat.com 報告了濫用行為?值得一試…