私は最初に質問を投稿しました ここ サーバーでの実際の分散型サービス拒否攻撃(DDoS)に慣れていなかったため。私のサーバーはHTTPリクエストへの応答が非常に遅いのに対し、HTTPSリクエストはかなり良好です(ただし期待したほどではありません)。
少し分析を行い、dmesg
とApacheの増大するサイズerror.log
(5GB以上)、DDoS攻撃を受けていることがわかりました。 Apacheをシャットダウンしてnetstat
を実行しました。すべてのSYN flood
なくなっている。
要約すれば:
問題は、リモートサーバーがポート80でApacheへの開始要求であり、TCP接続を開いたままにして、Apacheのリソースを使い果たしてしまうことでした。
私がしたこと:
Apacheのアップデートがあるかどうかを確認しましたが、最新の状態でした。
私のサーバーがコマンドアンドコントロールサーバーと通信するボットを実行していないことを確認するために、問題がなかったときに、現在のボリュームイメージを非常に古いものに置き換えました。サーバーを起動するとすぐに以前のように攻撃を受けたので、これは問題ではありませんでした。
[〜#〜] csf [〜#〜] をインストールしましたが、最初はこのソフトウェアを信頼できなかったので躊躇しました。 CSFの開始後SYN flood
防止、私はHTTPリクエストの改善に気づきましたが、それほどではありません。
私がやったことは、サーバーのIPを変更することで、攻撃はなくなりました。ところで、iptables
ルールは有効ではありませんでした。正規のトラフィックをブロックしてしまうからです。
私にとってまだ疑問は何ですか:
ポート80でDDoSされていたため、ポート443へのリクエストはおそらく高速でした。Apacheはプロセスをpreforkします。ポート80にサービスを提供するために、Apacheは新しいプロセスを生成する必要がありました。 443にサービスを提供するために、Apacheは既存のプロセスを使用していました。 (私は...後で確認する必要があると思います)
DDoSの緩和は、まだ難しい問題です。正当なトラフィックと偽のトラフィックを区別する必要があり、できるだけ少ない対話でそれを行う必要があります。
これが営利目的のサービスである場合は、専門のWebサーバー管理者やDDoS軽減サービスが適しています。
ある Webサーバー管理者の場合は、CSFやApache mod_securityなどのツールの機能を掘り下げることが役立ちます。攻撃者は正当なトラフィックのように見せかけることに集中しています。私自身は管理者であり、この種の攻撃は防御すべき深刻なPITAです。トラフィックのシグネチャの処理と適切なフィルタリングには時間がかかる場合があります。幸い、今日、DDoSツールは迅速に応答しないため、次のターゲットに進むか、しばらくあきらめます。
DoS攻撃のようにlooksの多くのsorta-legitトラフィックがあることに注意してください。振る舞いが悪いクモは私にとって最も迷惑です。ソーシャルメディアにグラフィックスをリンクしている人は、DDoSのように見える可能性があり、人気のあるフォーラムのグラフィックスにディープリンクする人がいると、一意のIPから毎秒数十または数百のヒットがあります。
IPTableで誰かをブロックするときは、そのトラフィックを「拒否」しないでください。もうやめろ。それは物事を遅くします。
このトピックに関する他の回答を楽しみにしています。