例:複数のファイアウォールフィルターのリストの適用
この例では、複数のファイアウォールフィルターのリストを適用する方法を示しています。
要件
開始する前に、以下を確認してください。
-
ルーターまたはスイッチを設置し、PIC、DPC、またはMPCをサポートし、ルーターまたはスイッチの初期設定を実行している。
-
トポロジーに基本イーサネットを設定。
-
IPv4(IPバージョン 4)プロトコル(
family inet
)を実行するように論理インターフェイスを設定し、インターフェイスアドレスで論理インターフェイスを設定。この例では、IP アドレス 172.16.1.2/30 で設定された論理インターフェイスge-1/3/0.0
を使用します。注:念のために、この例の設定セクションには、論理インターフェイス
ge-1/3/0.0
のIPアドレスの設定が含まれています。 -
トラフィックがトポロジー内を流れていること、およびイングレスおよびエグレスIPv4トラフィックが論理インターフェイス
ge-1/3/0.0
を通過していることを確認。 -
このルーターまたはスイッチの論理インターフェイス
ge-1/3/0.0
に接続されているリモートホストにアクセスできることを確認。
物理インターフェイス ポリサー/フィルターは、リスト フィルターではサポートされていません。
概要
この例では、3 つの IPv4 ファイアウォール フィルターを設定し、リストを使用して各フィルターを同じ論理インターフェイスに直接適用します。
トポロジー
この例では、論理インターフェイス ge-1/3/0.0
の入力フィルターのリストとして、以下のファイアウォール フィルターを適用します。各フィルターには、IPv4 パケットを評価し、TCP ヘッダーの destination port
フィールドの値に基づいてパケットを受け入れる 1 つの条件が含まれています。
FTP ポート 番号 (
21
) で一致するfilter_FTP
フィルターします。SSH ポート 番号 (
22
) で一致するfilter_SSH
フィルタリングします。フィルター
filter_Telnet
Telnetポート 番号(23
)で一致します。
インバウンド・パケットが入力リスト内のどのフィルターにも一致しない場合、そのパケットは廃棄されます。
Junos OSは、リスト内のフィルター名をリストに表示されている順序で使用します。この単純な例では、すべてのフィルターで同じアクションが指定されているため、順序は関係ありません。
いずれのフィルターも、単独で( input
または output
ステートメントを使用)、他のフィルターと組み合わせて( input-list
または output-list
ステートメントを使用して)他のインターフェイスに適用できます。目的は、インターフェイス固有のフィルタリストで再利用できる複数の「ミニマリスト」ファイアウォールフィルタを設定することです。
設定
次の例では、設定階層のいくつかのレベルに移動する必要があります。CLIのナビゲーションについては、 設定モードでのCLIエディターの使用を参照してください。
CLIクイック構成
この例をすばやく設定するには、次のコマンドをテキスト ファイルにコピーし、改行を削除してから、 [edit]
階層レベルの CLI にコマンドを貼り付けます。
set firewall family inet filter filter_FTP term 0 from protocol tcp set firewall family inet filter filter_FTP term 0 from destination-port 21 set firewall family inet filter filter_FTP term 0 then count pkts_FTP set firewall family inet filter filter_FTP term 0 then accept set firewall family inet filter filter_SSH term 0 from protocol tcp set firewall family inet filter filter_SSH term 0 from destination-port 22 set firewall family inet filter filter_SSH term 0 then count pkts_SSH set firewall family inet filter filter_SSH term 0 then accept set firewall family inet filter filter_Telnet term 0 from protocol tcp set firewall family inet filter filter_Telnet term 0 from destination-port 23 set firewall family inet filter filter_Telnet term 0 then count pkts_Telnet set firewall family inet filter filter_Telnet term 0 then accept set firewall family inet filter filter_discard term 1 then count pkts_discarded set firewall family inet filter filter_discard term 1 then discard set interfaces ge-1/3/0 unit 0 family inet address 172.16.1.2/30 set interfaces ge-1/3/0 unit 0 family inet filter input-list filter_FTP set interfaces ge-1/3/0 unit 0 family inet filter input-list filter_SSH set interfaces ge-1/3/0 unit 0 family inet filter input-list filter_Telnet set interfaces ge-1/3/0 unit 0 family inet filter input-list filter_discard
複数の IPv4 ファイアウォール フィルターを構成する
ステップバイステップでの手順
IPv4ファイアウォールフィルターを設定するには:
CLI を、IPv4 ファイアウォール フィルターを設定する階層レベルに移動します。
[edit] user@host# edit firewall family inet
最初のファイアウォールフィルターを構成して、ポート21のパケットをカウントして受け入れます。
[edit firewall family inet] user@host# set filter filter_FTP term 0 from protocol tcp user@host# set filter filter_FTP term 0 from destination-port 21 user@host# set filter filter_FTP term 0 then count pkts_FTP user@host# set filter filter_FTP term 0 then accept
2 番目のファイアウォール フィルターを構成して、ポート 22 のパケットをカウントして受け入れます。
[edit firewall family inet] user@host# set filter filter_SSH term 0 from protocol tcp user@host# set filter filter_SSH term 0 from destination-port 22 user@host# set filter filter_SSH term 0 then count pkt_SSH user@host# set filter filter_SSH term 0 then accept
3 番目のファイアウォール フィルターを構成して、ポート 23 からのパケットをカウントして受け入れます。
[edit firewall family inet] user@host# set filter filter_Telnet term 0 from protocol tcp user@host# set filter filter_Telnet term 0 from destination-port 23 user@host# set filter filter_Telnet term 0 then count pkts_Telnet user@host# set filter filter_Telnet term 0 then accept
破棄されたパケットをカウントする最後のファイアウォールフィルターを設定します。
[edit firewall family inet] user@host# set filter filter_discard term 1 then count pkts_discarded user@host# set filter filter_discard term 1 then discard
フィルターを入力リストおよび出力リストとして論理インターフェイスに適用します
ステップバイステップでの手順
6 つの IPv4 ファイアウォール フィルターを入力フィルターのリストおよび出力フィルターのリストとして適用するには:
論理インターフェイス
ge-1/3/0.0
にIPv4ファイアウォールフィルターを適用する階層レベルにCLIを移動します。[edit] user@host# edit interfaces ge-1/3/0 unit 0 family inet
論理インターフェイスのIPv4プロトコルファミリーを設定します。
[edit interfaces ge-1/3/0 unit 0 family inet] user@host# set address 172.16.1.2/30
フィルターを入力フィルターのリストとして適用します。
[edit interfaces ge-1/3/0 unit 0 family inet] user@host# set filter input-list [ filter_FTP filter_SSH filter_Telnet filter_discard ]
受験者の設定を確認してコミットする
ステップバイステップでの手順
候補の設定を確認してコミットするには、次の手順に従います。
show firewall
設定モード コマンドを入力して、ファイアウォール フィルターの設定を確認します。コマンドの出力結果に意図した設定内容が表示されない場合は、この例の手順を再実行して設定を修正します。[edit] user@host# show firewall family inet { filter filter_FTP { term 0 { from { protocol tcp; destination-port 21; } then { count pkts_FTP; accept; } } } filter filter_SSH { term 0 { from { protocol tcp; destination-port 22; } then { count pkts_SSH; accept; } } } filter filter_Telnet { term 0 { from { protocol tcp; destination-port 23; } then { count pkts_Telnet; accept; } } } filter filter_discard { term 1 { then { count pkts_discarded; discard; } } } }
show interfaces
設定モード コマンドを入力して、インターフェイスの設定を確認します。コマンドの出力結果に意図した設定内容が表示されない場合は、この例の手順を再実行して設定を修正します。[edit] user@host# show interfaces ge-1/3/0 { unit 0 { family inet { filter { input-list [ filter_FTP filter_SSH filter_Telnet filter_discard ]; } address 172.16.1.2/30; } } }
デバイスの設定が完了したら、受験者の設定をコミットします。
[edit] user@host# commit
検証
設定が正常に機能していることを確認します。
インバウンドパケットが、FTP、SSH、またはTelnetポート宛ての場合にのみ受け入れられることの確認
目的
3つのフィルターすべてが論理インターフェイスに対してアクティブになっていることを確認します。
アクション
3つのフィルタに従って入力パケットが受け入れられていることを確認するには:
このルーター(またはスイッチ)の論理インターフェイス
ge-1/3/0.0
に接続されているリモートホストから、ヘッダーに宛先ポート番号 21を持つパケットを送信します。パケットが受け入れられる必要があります。このルーター(またはスイッチ)の論理インターフェイス
ge-1/3/0.0
に接続されているリモートホストから、ヘッダーに宛先ポート番号 22を持つパケットを送信します。パケットが受け入れられる必要があります。このルーター(またはスイッチ)の論理インターフェイス
ge-1/3/0.0
に接続されているリモートホストから、ヘッダーに宛先ポート番号 23を持つパケットを送信します。パケットが受け入れられる必要があります。このルーター(またはスイッチ)の論理インターフェイス
ge-1/3/0.0
に接続されているリモートホストから、宛先ポート番号が21、22、または23 以外の パケットを送信します。パケットは破棄する必要があります。-
ge-1/3/0.0
の入力に適用されるフィルターのリストのカウンタ情報を表示するには、show firewall filter ge-1/3/0.0-inet-i
動作モードコマンドを入力します。コマンドの出力は、以下のカウンターに関連するフィルター条件に一致するバイト数とパケット数を表示します。-
pkts_FTP-ge-1/3/0.0-inet-i
-
pkts_SSH-ge-1/3/0.0-inet-i
-
pkts_Telnet-ge-1/3/0.0-inet-i
-
pkts_discard-ge-1/3/0.0-inet-i
-