
その夜、私はオンラインゲームのサーバー側をデバッグしていたのだが、突然監視アラームが真っ赤になった。プレイヤーが一斉に脱落し、バックグラウンドのトラフィックが数百Gbpsに急増したのだ。しかしよく見てみると、ファイアウォールのログにはUDPパケットは山のように積まれ、防御力の高いサーバーは実際にUDPトラフィックをデフォルトにしてクリーンを挟み、ゲームの音声とリアルタイムのデータ同期が瞬時に麻痺し、チームは一晩で逃げ出しそうになった。
正直なところ、答えはそんなに単純ではない。あなたが遭遇するサービス・プロバイダー、設定戦略、そしてあなたがこの道を知っているかどうかによる。
私は10年以上ネットワーク・セキュリティに携わってきたが、UDPに騙される人をたくさん見てきた。
DDoS対策サーバー名前が示すように、特にDDoS攻撃の様々な戦いは、運ぶことですが、UDPプロトコルは本質的に “backstabber ”である - それは、接続されていない認証しない、攻撃者が何気なく偽造ソースIPは、DNSクエリなどの攻撃の反射増幅を起動することができるようになります、NTP応答は、すべての突然の何百ものトラフィックを回すことができます。だから、多くの高い防衛サービスプロバイダは、物事を保存するために、デフォルトの戦略は、ワンサイズです:UDP?このトリックは確かにジャンクトラフィックの多くをブロックすることができますが、副作用も大きく、ゲーム、ビデオ会議、VoIPなど、これらのアプリケーションは、UDPに依存して、何とか麻痺があります。
完全なプロトコル保護」と吹聴する広告を信じてはならない。私は、いくつかの主流の高度な防御サービスをテストしたが、UDPポートのデフォルト設定では、10中9がパスしなかった。
一度私はテストのために08Hostの高い防衛サーバーを取った、彼らのコントロールパネルは、実際に “UDPリリース ”オプションを隠し、あなたが手動で開かなければならない、基本的なDNSの解決でさえ、犬のように立ち往生しています。
しかし、再び、08Hostこの点はかなり現実的に行うには、顧客サービスが直接私に言った:UDPのリスクは高いですが、我々は完全にブロックされていない、ユーザーは彼らのインテリジェントなクリーニングシステムを使用して、ビジネスニーズに応じてルールをカスタマイズすることができます、実際のテストは98%以上の反射攻撃緩和率をダウンさせ、ゲームの待ち時間はまだ20ミリ秒の中で安定している - - -最近では、UDPを自由に規制することができますサービスプロバイダを見ることはまれであり、それらのほとんどはそれを隠し、あなたが問題が発生したときにそれを捨てる。-最近では、UDPを自由に規制できるサービス・プロバイダーは本当にまれで、そのほとんどは隠れていて、あなたに問題が起こるのを待って、あなたにポットを投げるのです。
防御力の高いサーバーはなぜUDPをブロックしたがるのか?
はっきり言って、コストとセキュリティーの問題だ。CLDAPリクエストそれは数十倍の流れを増幅することができ、サービスプロバイダが完全に解放された場合、クリーニングセンターは数分で洗い流された、彼らは自然に尊敬のために最初にプラグインする傾向がある。しかし、これは私たちのユーザーのためのピットです、私はかつて金融プロジェクトを取った、高速トランザクションのデータ伝送を行うには、UDPを必要とする、ギアから直接ビジネス上の高防御デフォルトポリシーの結果は、顧客の電話が壊れていた。後で分析を解凍すると、サービスプロバイダの基本的なルールは、10Mbps以上のUDPレートが自動的にブラックホール、リマインダもトリガされないことがわかった - これは単にチームメイトよりも反泥棒冷酷です!
アドバイスとしては、デフォルトの設定ですべてを解決してくれるとは思わないことだ。防御力の高いサーバーを本当に使いたいのであれば、まずそのサーバーのドキュメントをよく読み、UDPポリシーを見ることだ。CiscoやHuaweiのファイアウォールのような独自のハードウェアをホストしている場合、私は通常iptablesルールをこのように調整し、重要なUDPポートを最初に解放し、次に乱用を防ぐために速度を制限します:
私は何年もこの設定を使っており、小規模なリフレクション攻撃にも耐えられることをテスト済みで、私のビジネスにはまだ影響がない。しかし、AliyunやTencent cloudのようなクラウドサービスプロバイダーの高度な防御であれば、コンソールをドリルする必要がある:“security group ”または “DDoS advanced policy ”を探し、UDPポートのホワイトリストを設定し、トラフィックのクリーニングをオンにする!--デフォルト値では敏感すぎて、正常なトラフィックまで誤って殺してしまうかもしれない。私は、サービスプロバイダをクリーニングしきい値100Mbps、カードのピークに会社のビデオ会議の結果を発生し、手動で問題を解決するために50Mbpsに調整し、ドキュメントの詳細は、すべて自分の試行錯誤に依存して書き込まれません。
UDPの圧力を共有するためにCDNを利用する、もっと卑劣な作戦もある。CDN07のようなものだ。DDoS対策CDNエッジノードが直接ライブストリームを処理し、バックエンドのハイディフェンスサーバーはTCPのみをピックアップするため、攻撃対象ははるかに小さくなる。
CDN07の設定の背景は非常にシンプルで、ルールを追加すると、クリーニングセンターにUDPトラフィックをルーティングすることができ、私はテストし、500GbpsのUDPトレントは、ほぼゼロパケット損失にカットすることができ、価格は純粋な高防御サーバー30%よりも安いです - もちろん、これは広告ではなく、それは私が実際にピットを踏んだ後に見つけた宝のソリューションです。
技術者は常に現実を直視しなければならない。高防御サーバーブロックUDPは鉄則ではありませんが、キーはどのように通信し、設定する方法に依存します。UDPのデフォルトの状態、クリーニングメカニズム、ログが開いている、それは彼らが自分のtelnetを実行するためのテストIPを与えるようにするのが最善です:私は明らかに依頼する作業指示書を送信する前にサービスを購入するために使用されます。
この前、顧客の図は安く、高い防衛の小さなサービスプロバイダを買って、UDPの結果はまだ解決策を与えていないすべての死者をブロックし、ビジネスオンライン崩壊し、最終的にのみ行く08Hostに移行することができます、人々は直接カスタムルールは、私はポートリリースを修正するスクリプトを書いたように舞台裏APIを開き、夜更かしに多くの時間を節約する。だから、単に価格を見ていない、テクニカルサポートの透明性は王である。
経験といえば、データ比較の話がある。私は昨年、AサービスプロバイダのデフォルトUDPブロック、Bサービスプロバイダのパーシャルオープン、Cサービスプロバイダ(つまり08Host)のフルプロトコル調整可能という3つの高防御製品のストレステストを行った。ScapyでUDP攻撃シミュレーションを行った結果、Aは50Gbpsのトラフィックが24時間ブラックホールに直撃され、Bはかろうじて持ちこたえたが、ビジネスの待ち時間が200msに急増し、Cは動的クリーニングにより、待ち時間が30ms以下にとどまり、攻撃は軽減され、自動的に回復した。ギャップは少しではないので、私は後に高いセキュリティを必要とするプロジェクトは、基本的にUDPプログラムの柔軟な管理を選択することをお勧めします、より高価な価値もある。
最後に心からの言葉を。
このビジネスにおけるネットワークセキュリティは、最も恐れていることは、当たり前のことを当たり前にすることです。あなたは、高セキュリティサーバーがすべてを防ぐことができると思う、UDPのピンチの結果は、ビジネスが攻撃よりも速く死亡した。私の経験では、事前の計画:UDPポート、ピークのトラフィックサイズ、サービスプロバイダは、リアルタイムの監視を提供することができますどのビジネス - これらの詳細は、生と死を決定することです。私はあなたがゲームデータを転送する必要があるシナリオに適したNginx用のUDPプロキシスニペット、以下に設定例を入れている:
このことは、複数のバックエンドに分散UDPトラフィックに役立つことができる、高い防衛の圧力を軽減し、5ミリ秒未満の遅延の増加を測定した。 しかし、コードは唯一のツールであることを覚えて、実際の作業は、プロトコルのあなたの理解であり、メンタリティの出現に対処する。最近でも、CDNは “チームメイトを防ぐ ”ために持っている、我々は技術を行う、我々は1日が泣くデフォルトのポリシーピットにならないように、自分の手で設定のより多くの心に留めておく必要があります。
サーバーが安定していれば、ぐっすり眠れますよね?