例:ICMPフラッドから論理システムを保護するためのステートレスファイアウォールフィルターの設定
この例では、論理システムに対する ICMP サービス拒否攻撃から保護するステートレス ファイアウォール フィルターを設定する方法を示します。
要件
この例では、デバイスの初期化以上の特別な設定は必要ありません。
概要
この例では、ICMP パケットをポリシングする protect-RE と呼ばれるステートレス ファイアウォール フィルターを示しています。では icmp-policer
、ICMP パケットのトラフィック レートを 1,000,000 bps に、バースト サイズを 15,000 バイトに制限します。トラフィック レートを超えるパケットは破棄されます。
ポリサーは、 と呼ばれる icmp-term
フィルター条件のアクションに組み込まれます。
この例では、直接接続された物理ルーターから論理システムで設定されたインターフェイスに ping が送信されます。ICMP パケットが最大 1 Mbps(帯域幅制限)の速度で受信された場合、論理システムは ICMP パケットを受け入れます。このレートを超えると、論理システムはすべての ICMP パケットをドロップします。ステートメントは burst-size-limit
、最大 15 Kbps のトラフィック バーストを受け入れます。バーストがこの制限を超えると、すべてのパケットがドロップされます。フロー レートが下がると、ICMP パケットは再び受け入れられます。
設定
CLI クイックコンフィギュレーション
この例を迅速に設定するには、以下のコマンドをコピーしてテキスト ファイルに貼り付け、改行を削除し、ネットワーク設定に合わせて必要な詳細を変更し、コマンドを 階層レベルの CLI [edit]
にコピー アンド ペーストします。
set logical-systems LS1 interfaces so-0/0/2 unit 0 family inet policer input icmp-policer set logical-systems LS1 interfaces so-0/0/2 unit 0 family inet address 10.0.45.2/30 set logical-systems LS1 firewall family inet filter protect-RE term icmp-term from protocol icmp set logical-systems LS1 firewall family inet filter protect-RE term icmp-term then policer icmp-policer set logical-systems LS1 firewall family inet filter protect-RE term icmp-term then accept set logical-systems LS1 firewall policer icmp-policer if-exceeding bandwidth-limit 1m set logical-systems LS1 firewall policer icmp-policer if-exceeding burst-size-limit 15k set logical-systems LS1 firewall policer icmp-policer then discard
手順
手順
次の例では、設定階層内のさまざまなレベルに移動する必要があります。CLIのナビゲーションについては、 CLIユーザーガイドの設定モードでCLIエディターを使用するを参照してください。
論理システムで ICMP ファイアウォール フィルターを設定するには、
論理システム上のインターフェイスを設定します。
[edit] user@host# set logical-systems LS1 interfaces so-0/0/2 unit 0 family inet address 10.0.45.2/30
インターフェイスで ICMP パケットを受信することを明示的に有効にします。
[edit] user@host# set logical-systems LS1 firewall family inet filter protect-RE term icmp-term from protocol icmp user@host# set logical-systems LS1 firewall family inet filter protect-RE term icmp-term then accept
ポリサーを作成します。
[edit] user@host# set logical-systems LS1 firewall policer icmp-policer if-exceeding bandwidth-limit 1m user@host# set logical-systems LS1 firewall policer icmp-policer if-exceeding burst-size-limit 15k user@host# set logical-systems LS1 firewall policer icmp-policer then discard
フィルター条件にポリサーを適用します。
[edit] user@host# set logical-systems LS1 firewall family inet filter protect-RE term icmp-term then policer icmp-policer
論理システム インターフェイスにポリサーを適用します。
[edit] user@host# set logical-systems LS1 interfaces so-0/0/2 unit 0 family inet policer input icmp-policer
デバイスの設定が完了したら、設定をコミットします。
[edit] user@host# commit
結果
コマンドを発行して、設定を show logical-systems LS1
確認します。
user@host# show logical-systems LS1 interfaces { so-0/0/2 { unit 0 { family inet { policer { input icmp-policer; } address 10.0.45.2/30; } } } } firewall { family inet { filter protect-RE { term icmp-term { from { protocol icmp; } then { policer icmp-policer; accept; } } } } policer icmp-policer { if-exceeding { bandwidth-limit 1m; burst-size-limit 15k; } then discard; } }
検証
設定が正しく機能していることを確認します。
制限を超えない限り Ping の動作を確認する
目的
論理システム インターフェイスが ICMP ベースの DoS 攻撃から保護されていることを確認します。
対処
論理システムに接続しているシステムにログインし、 コマンドを ping
実行します。
user@R2> ping 10.0.45.2 PING 10.0.45.2 (10.0.45.2): 56 data bytes 64 bytes from 10.0.45.2: icmp_seq=0 ttl=64 time=1.316 ms 64 bytes from 10.0.45.2: icmp_seq=1 ttl=64 time=1.277 ms 64 bytes from 10.0.45.2: icmp_seq=2 ttl=64 time=1.269 ms
user@R2> ping 10.0.45.2 size 20000 PING 10.0.45.2 (10.0.45.2): 20000 data bytes ^C --- 10.0.45.2 ping statistics --- 4 packets transmitted, 0 packets received, 100% packet loss
意味
通常の ping を送信すると、パケットが受け入れられます。フィルター制限を超える ping パケットを送信すると、パケットは破棄されます。