接続ログを見ると、特定のIPアドレスで接続が多すぎることがわかります。次に、.htaccessまたは.confファイルを編集して、そのIPへのアクセスを拒否します。タスクを実行できるコマンドまたはオネライナーがあるかどうか疑問に思いますdeny 1.2.3.4
。
deny 1.2.3.4
または、.confファイルの特定の行番号に1行を挿入してからApacheを再起動する方法を教えてください。
追加:私のJoyentインスタンスにはIPF以外のコマンドはありませんiptables
。
答え1
iptables
IPをブロックするには、以下を追加する必要があります。
iptables -A INPUT -s <ipaddress> -j DROP
マニュアルページによると:
DROP
パケットを床に投げることを意味します。
答え2
ipfilter
まず、設定ファイルを編集する必要があります/etc/ipf/ipf.conf
。
たとえば、次を追加します。
block in from src.ip.addr to dest.ip.addr
src.ip.addr
ブロックしたいアドレスはどこにあり、dest.ip.addr
パブリックIPアドレスはどこにあります(ここに入力できる必要がありますany
)。
を使用して設定をテストできますipfstat -io
。サービスが有効になっていることを確認してくださいipfilter
。方法がわからない場合は、お気に入りの検索エンジンを確認するか、新しい質問をします(オペレーティングシステムに言及することを忘れないでください)。
答え3
IPブロックの問題は、攻撃側の誰かがあなたのIPを攻撃しようとすると、他のIPに移動することです。
Fail2banツールはIPブロックに非常に効果的であるため、そのIPは一定期間ブロックされた後にブロックが解除されます。
これにより、誤ってIPをブロックした場合、最終的にはブロックが解除されます。
Fail2banを使用すると、攻撃者が短時間でIPのみを使用し、そのIPが空きプールに返される問題を解決します。後でこのIPが「本物の」サイトによって割り当てられ、手動ブロックを追加すると、この新しい「本物の」サイトにトラフィックが流れません。
IPを手動でブロックするのはおそらく大丈夫でしょう。 +時間が経つにつれて、一部の人々が1000個のIPをブロックするのを見たことがあります。
fall2banを使用すると、オートパイロットは良いIPと悪いIPを維持することができます。