Spectrum は OSI 参照モデル ↗ のレイヤー 3〜4 で DDoS 防御を提供します。つまり、TCP および UDP ベースの DDoS 攻撃に対する防御です。
Spectrum はレイヤー 4 のリバースプロキシとして動作するため、トラフィックがオリジンへプロキシされる前に、正規の TCP 接続が確立されている必要があります。これにより、SYN や SYN-ACK リフレクション攻撃の影響は Cloudflare グローバルネットワーク側へ移ります。さらに、アプリケーションの前に Spectrum を置くとオリジン IP が隠れるため、攻撃者がオリジンサーバーを直接狙うことを防げます。Cloudflare へ移行したあとはオリジン IP アドレスを差し替え、Cloudflare の IP アドレス範囲 ↗ からのトラフィックだけを受け付けるよう制限することも推奨します。
クライアントと Cloudflare の間に正規の TCP 接続がまだ確立されていない場合、ランダムまたは状態外の TCP パケットはオリジンへ渡すべきではありません。Spectrum はフラッド対策として、Linux ネットワークスタックの一部である SYN cookie チャレンジも使います ↗。
さらに、想定外のプロトコルのパケットフラッドがアプリケーションを狙った場合(例: Spectrum アプリケーションが TCP 向けなのに UDP フラッドが来る)、そのパケットは破棄されます。指定していないポートやポート範囲を狙うパケットも同様に破棄されます。
L3/4 の DDoS 攻撃は、デフォルトで有効な Network-layer DDoS Attack Protection マネージドルールセット が検出して緩和します。このルールセットは、パケットヘッダーフィールドに基づいて攻撃を動的にフィンガープリントし、検出と緩和を行います。
HTTP/S アプリケーションを L7 の DDoS 攻撃から守り、キャッシュや追加機能も使うには、アプリケーションを Cloudflare の Web Application Firewall / Content Delivery Network サービスにオンボードしてください。このサービスは Cloudflare Spectrum と併用できます。
詳細は Cloudflare DDoS Protection を参照してください。
Network Analytics の DDoS managed rules タブ(ダッシュボードでは Networking > Insights > Network Analytics)に表示される Mitigation reason フィールドには、Spectrum システムがパケットを破棄した理由の詳細が入ります。
緩和の理由は次のとおりです。
| 理由 | 説明 |
|---|---|
| Blocked | DDoS 防御ルールに一致したため、パケットを破棄しました。 |
| Rate limited | レート制限を超えたため、パケットを破棄しました。 |
| Connection limited | 接続数の制限を超えたため、パケットを破棄しました。 |
| Unexpected | 関連する接続の現在の状態から見て想定外だったため、パケットを破棄しました。 |
| Not found | 宛先 IP アドレスとポートに設定された Spectrum アプリケーションに一致しなかったため、パケットを破棄しました。 |