web-dev-qa-db-ja.com

多数のIPをブロックしようとしています

侵入しようとする人々によって絶えず強打されるサーバーがあります。サーバー上でDenyHostsとFail2Banが実行されていますが、それでも、何の役にも立たない人々から大量のトラフィックを受け取ります。私の上司はついにそれにうんざりしました、彼は http://ipinfodb.com/ip_country_block.php に行き、サーバーからブロックしたいIP範囲のリストを作成しました。事はそれが13,000ipsを少し超えるリストであるということです。

これらのIPをブロックする最良の方法は何ですか?リストをループしてiptablesに追加するスクリプトを書くこともできますが、これは悪い考えのようです。リストをDenyHostsに貼り付けることはできますが、これによるパフォーマンスの低下がどうなるかわかりません。これらのいずれよりも優れた代替手段はありますか?

これについてアドバイスをくれる人はいますか?

4
user140816

Ipsetを使用してIP範囲のセットを作成し(おそらくスクリプトを使用)、iptablesルールで--match-setを使用します。この方法では、ipsetがハッシュされるため、マッチングは非常に効率的です。

2
Eugene