VRF対応のセキュリティゾーンを使用したセキュリティポリシー
VRF認識ゾーンベースのポリシー適用
概要
VRF認識のゾーンベースのポリシー適用機能により、VRFレベルでセキュリティポリシーを管理するための戦略的アプローチが導入されます。
各 VRF インスタンスにゾーンを作成し、VRF インスタンス間にポリシーを適用して、MPLS と VXLAN のレイヤー 3 VPN(L3VPN)ポリシー管理を簡素化できるようになりました。VRF対応セキュリティゾーンを定義することで、VRF内とVRF間のトラフィックをより詳細に制御し、L3VPN導入全体の制御を行うことができます。ポリシールックアッププロセスは、VRFベースのゾーンとインターフェイスベースのゾーンを統合するように適応し、包括的なポリシー適用を可能にします。
セキュリティゾーンは、(VRFグループではなく)VRFインスタンスで定義します。ポリシールールセットのVRFグループ制限は変更されません。受信トラフィックの場合、ファイアウォールは最初にL3VPNゾーンを評価し、次に物理インターフェイスゾーンを評価します。一致するゾーンがない場合、ファイアウォールはパケットをドロップします。
[edit security zones security-zone zone-name]階層レベルのvrfオプションを使用して、VRFごとのセキュリティゾーンを設定します。show security policiesおよびshow security zones操作コマンドを使用して、設定を確認します。これらのコマンドは、既存のsyslogのsource-zone-nameフィールドとdestination-zone-nameフィールドにVRFベースのゾーン名を表示します。また、新しいsyslogフィールドであるsrc-vrfとdst-vrfには、送信元と宛先のVRFインスタンスが表示されます。システムログエクスプローラ |ジュニパーネットワークスのパスファインダー
VRF 対応ゾーンベースのセキュリティ ポリシー
以前は、ゾーンの変更は単一レベルのゾーンモデルで処理され、ゾーンの変更が発生するとセッションが完全に破棄されていました。
概要
インターフェイスでゾーンを定義する方法と同様に、VRFインスタンス(VRF認識ゾーン)を使用してゾーンを定義できるようになりました。ポリシールックアッププロセスにはVRFゾーンが組み込まれており、インターフェイスベースのゾーンとのクロスコンビネーションを可能にして、包括的なポリシーを適用できます。
VRF インスタンスを使用してゾーンを定義します。 VRF対応ゾーンは、ポリシー評価に関しては、インターフェイスベースのゾーンコンテキストと同じように動作します。インターフェイスベースの ゾーン間 および ゾーン間 の組み合わせがコンテキストと見なされるのと同様に、VRFゾーンも同じように考慮されます。ファイアウォールフローは、ポリシールックアップ用のインターフェイスゾーンの詳細を送信するのと同じ方法で、VRFゾーンをポリシーに送信します。
VRF 固有のゾーン内で MPLS トラフィックと VXLAN トラフィックが一致する 2 レベルのゾーンをサポートするようになりました。このアプローチにより、他のオーバーレイまたはアンダーレイゾーンに影響を与えることなく、セッションがVRF固有のポリシーによって管理されます。
トラフィック評価(タイプに基づく):
- MPLS または VXLAN トラフィックの場合、VRF ベースのゾーンに最高の優先度が与えられます。
- IPトラフィックの場合、デバイスはインターフェイスベースのゾーンのみをチェックします。
ポリシー評価(トラフィックタイプに基づく):
-
MPLS および VXLAN トラフィックの場合、ポリシー評価では VRF ベースのゾーンを使用します。
-
IPトラフィックの場合、ポリシー評価ではインターフェイスベースのゾーンのみが使用されます。
あいまいな一致を防ぐために、単一のVRFグループポリシーの制限が残っています。
VRF 対応ゾーンとインターフェイスベース ゾーンは分離されたままです。VRF 対応ゾーンにインターフェイスを含めることはできません。インターフェイスゾーンは、VRF認識ゾーンを参照することはできません。
VRF対応ゾーンベースのポリシー適用には後方互換性があるため、既存のVRFレベルの適用が機能し続けると同時に、新しいVRFベースのゾーン設定が組み込まれます。
下位互換性を維持するため、同じポリシーでVRFベースのゾーンとVRF一致基準の両方を設定することはサポートされておらず、その場合、コミットエラーが発生します。
MPLS および VXLAN トラフィックの場合、セッションは VRF 固有のゾーン ポリシーに基づいて作成されます。パケットはVRFゾーンと一致し、一致した場合、デバイスはそれに応じてセッションを確立します。
フローセッションの動作
このセクションでは、オーバーレイからオーバーレイ、アンダーレイからアンダーレイ、およびオーバーレイからアンダーレイのフローの3つのシナリオにおけるフローセッションの動作について説明します。
ゾーンとVRFの変更をセッションの動作を予測可能な方法で管理し、トラフィックの継続性を維持できます。
トラフィックがオーバーレイゾーンに一致する場合、アンダーレイゾーンにインターフェイスを追加したり、未使用のインターフェイスを削除したりしても、セッションは終了しません。また、トラフィック一致したオーバーレイゾーンにVRFインスタンスを追加したり、そのオーバーレイゾーンから未使用のVRFインスタンスを削除したりしても、デバイスはトラフィックを保持します。
トラフィックがオーバーレイゾーンに一致する場合、アンダーレイゾーンの名前を変更するか、アンダーレイゾーンでオーバーレイゾーンに一致したトラフィックを伝送するインターフェイスを削除すると、セッションは終了します。
構成の概要
VRF ベースのゾーンは VRF インスタンス専用であり、直接インターフェイス設定をサポートしていません。同様に、インターフェイスベースのゾーンも VRF インスタンスに対応しません。仮想ネットワーク識別子(VNI)対応ゾーンはサポートされていません。
VRFゾーンを設定します。 VRFゾーンを定義し、CLI、Security Director、またはSecurity Director Cloudを使用して特定のポリシーに関連付けます。
VRFゾーンの設定を確認します。 既存のポリシーコマンドとゾーン表示コマンドを使用します。コマンド出力が更新され、VRF ゾーンの詳細が含まれるようになり、現在の設定と潜在的な不一致を可視化できるようになりました。
VRF対応ゾーンベースポリシー設定の制限
- ゾーンはVRFインスタンスに基づいてのみ設定でき、VRFグループに基づいては設定できません。
- 各 VRF インスタンスに対して、VRF グループまたは VRF ゾーンのいずれかを選択します。両方を設定すると、コミットに失敗し、コミットエラーが発生します。
- VRFグループとVRFゾーン間のトラフィックは許可されていません。フロー処理は、VRF グループと VRF ゾーン間のトラフィックを明示的に拒否し、ドロップします。
- インターフェイスとVRFインスタンスを同じゾーンで設定すると、以下に示すようなコミットエラーが発生します。
user@host# commit [edit security zones security-zone vrf-zone1] 'vrf' vrf and interfaces cannot be configured together error: commit failed: (statements constraint check failed) [edit] - 同じポリシーでVRFベースのゾーンとVRFの両方の一致基準を設定すると、以下に示すようにコミットエラーが発生します。
user@host# commit [edit security policies from-zone trust to-zone untrust policy zone-pol1] 'match' VRF match criteria addition to VRF based zone is invalid error: configuration check-out failed [edit]
- ゾーンで 32 を超える VRF インスタンスを設定すると、以下に示すようにコミット エラーが発生します。
user@host# commit [edit security zones security-zone vrf-zone1 vrf] 'VRF-c6' Exceeded the max number of vrfs (32) error: configuration check-out failed [edit]
- 同じVRFインスタンスを複数のゾーンに関連付けると、以下に示すようにコミットエラーが発生します。
user@host# commit [edit security zones] 'security-zone vrf-zone1' vrf VRF-a cannot be configured to multiple zones error: configuration check-out failed [edit]
- VRFゾーンとVRFグループに同じVRFインスタンスを設定すると、以下に示すようにコミットエラーが発生します。
# set security zones security-zone VRF2_ZONE vrf VRF1 set security zones security-zone VRF1_ZONE vrf VRF1 [edit] user@host# set security l3vpn vrf-group G1 vrf VRF1 [edit] root@10.205.54.84# commit check [edit security l3vpn vrf-group G1 vrf] 'VRF1' same vrf should not be in vrf-group and vrf-zone error: configuration check-out failed: (statements constraint check failed)
例:VRF対応セキュリティゾーンでセキュリティポリシーを設定し、VRFベースのトラフィックを管理する
この例では、VRF対応のセキュリティゾーンでセキュリティポリシーを設定し、VRFベースのトラフィックを管理する方法を示しています。
要件
-
セキュリティゾーンの作成方法を理解します。「 例:セキュリティゾーンの作成」を参照してください。
-
サポートされているすべてのJunos OSリリースでサポートされているSRXシリーズファイアウォール。
-
デバイス上のネットワークインターフェイスを設定します。 セキュリティデバイス向けインターフェイスユーザーガイドを参照してください。
概要
Junos OSでは、セキュリティポリシーは、デバイスを通過できるトラフィックや、デバイスを通過する際にトラフィックに対して実行する必要があるアクションなど、トランジットトラフィックのルールを適用します。SRXシリーズファイアウォールはSD-WANに導入され、VRF認識ゾーンベースのセキュリティポリシーを使用してトラフィックを制御します。
VRFインスタンス、セキュリティゾーン、およびゾーン間通信を使用して、VRF認識のゾーンベースのセキュリティポリシーを設定できます。
この設定例では、MPLS L3VPN 機能を有効にしながら、別個のルーティングテーブルと転送テーブルを維持する 2 つの分離された仮想ルーティングインスタンス(VRF-a と VRF-b)を作成します。各VRFインスタンスは独自のセキュリティゾーンに関連付けられているため、セキュリティポリシーをきめ細かく適用できます。
この設定には、トラストゾーンを介してVRFインスタンスと外部ネットワーク間の制御された通信を許可するセキュリティポリシーが含まれています。VRFルーティングテーブルの分離、セキュリティゾーンの関連付け、トラフィックフローのテストと監視コマンドによるポリシー適用を確認することで、設定を検証できます。
設定
VRFインスタンス、セキュリティゾーン、およびゾーン間通信でVRF認識のゾーンベースのセキュリティポリシーを設定し、トラフィックを許可します。
手順
この例をすばやく設定するには、以下のコマンドをコピーしてテキストファイルに貼り付け、改行を削除し、ネットワーク設定に一致させる必要がある詳細情報を変更し、コマンドを [edit] 階層レベルでCLIにコピーアンドペーストして、設定モードから commit を入力します。
CLIクイックコンフィグレーション
set routing-instances VRF-a instance-type vrf set routing-instances VRF-a route-distinguisher 10:200 set routing-instances VRF-a vrf-target target:100:100 set routing-instances VRF-a vrf-table-label set routing-instances VRF-b instance-type vrf set routing-instances VRF-b route-distinguisher 20:200 set routing-instances VRF-b vrf-target target:200:100 set routing-instances VRF-b vrf-table-label set security zones security-zone vrf-zone1 vrf VRF-a set security zones security-zone vrf-zone2 vrf VRF-b set security policies from-zone vrf-zone1 to-zone vrf-zone2 policy pol1 match source-address any set security policies from-zone vrf-zone1 to-zone vrf-zone2 policy pol1 match destination-address any set security policies from-zone vrf-zone1 to-zone vrf-zone2 policy pol1 match application any set security policies from-zone vrf-zone1 to-zone vrf-zone2 policy pol1 match dynamic-application any set security policies from-zone vrf-zone1 to-zone vrf-zone2 policy pol1 then permit set security zones security-zone trust interfaces ge-0/0/0.0 set interfaces ge-0/0/0 unit 0 family inet address 4.0.0.254/8 set security policies from-zone vrf-zone1 to-zone trust policy pol2 match source-address any set security policies from-zone vrf-zone1 to-zone trust policy pol2 match destination-address any set security policies from-zone vrf-zone1 to-zone trust policy pol2 match application any set security policies from-zone vrf-zone1 to-zone trust policy pol2 match dynamic-application any set security policies from-zone vrf-zone1 to-zone trust policy pol2 then permit
ステップバイステップの手順
次の例では、設定階層のさまざまなレベルに移動する必要があります。CLIのナビゲーションについては、『Junos OS CLIユーザーガイド』の「設定モードでのCLIエディターの使用」を参照してください。
VRF-aおよびVRF-bインスタンスを設定します。
[edit routing-instances] user@host# set VRF-a instance-type vrf user@host# set VRF-b instance-type vrf-
各VRFルーティングインスタンスにルート識別子を割り当てます。
[edit routing-instances] user@host#set VRF-a route-distinguisher 10:200 user@host#set VRF-b route-distinguisher 20:200
-
各 VRF ルーティングインスタンスの VRF ターゲットを設定します。
[edit routing-instances] user@host#set VRF-a vrf-target target:100:100 user@host#set VRF-b vrf-target target:200:100異なる VRF ターゲットを設定することで、VRF インスタンス間でのルート共有が制御されます。
-
VRFインスタンス内のすべてのルートに1つのVPNラベルを割り当てます。
[edit routing-instances] user@host#set VRF-a vrf-table-label user@host#set VRF-b vrf-table-label セキュリティゾーンをそれぞれ定義されたVRFインスタンスに関連付けます。
[edit security] user@host#set security zones security-zone vrf-zone1 vrf VRF-a user@host#set security zones security-zone vrf-zone2 vrf VRF-b
trustゾーンインターフェイスを設定します。
[edit security] user@host#set security zones security-zone trust interfaces ge-0/0/0.0 user@host#set interfaces ge-0/0/0 unit 0 family inet address 4.0.0.254/8
管理または共有サービスインターフェイスをトラストゾーンに割り当てます。このインターフェイスは、グローバルルーティングテーブルのコンテキストで動作します。VRFインスタンス外の共有サービスまたは管理ネットワークへのアクセスを提供します。
-
VRF間通信ポリシーを設定します。
[edit security policies from-zone vrf-zone1 to-zone vrf-zone2] user@host#set policy pol1 match source-address any user@host#set policy pol1 match destination-address any user@host#set policy pol1 match application any user@host#set policy pol1 match dynamic-application any user@host#set policy pol1 then permit
ポリシー
pol1は、vrf-zone1からvrf-zone2へのトラフィックを許可します。pol1送信元アドレス、宛先アドレス、またはアプリケーションに一致する場合、then permitアクションにより、一致したトラフィックがVRFインスタンス間を流れるようになります。この設定により、そうでなければ分離されたVRFインスタンス間に制御されたブリッジが作成されます。 VRF-a とトラストゾーン間の通信を有効にするポリシーを設定します。
[edit security policies from-zone vrf-zone1 to-zone trust] user@host#set policy pol2 match destination-address any user@host#set policy pol2 match application any user@host#set policy pol2 match dynamic-application any user@host#set policy pol2 then permit
ポリシー
pol2は、vrf-zone1からtrustゾーンへの通信を有効にします。また、このポリシーにより、VRF-aトラフィックがグローバルルーティングテーブル内の共有サービスに到達することを許可し、接続の柔軟性を最大限に高めるために幅広い一致基準が維持されます。
結果
設定モードから、 show security policies および show routing-instances コマンドを入力して設定を確認します。出力に意図した設定が表示されない場合は、この設定の指示を繰り返して修正します。
[edit]
user@host#show security policies
from-zone vrf-zone1 to-zone vrf-zone2 {
policy pol1 {
match {
source-address any;
destination-address any;
application any;
dynamic-application any;
}
then {
permit;
}
}
}
from-zone vrf-zone1 to-zone trust {
policy pol2 {
match {
source-address any;
destination-address any;
application any;
dynamic-application any;
}
then {
permit;
}
}
[edit]
user@host# show routing-instances
VRF-a {
instance-type vrf;
route-distinguisher 10:200;
vrf-target target:100:100;
vrf-table-label;
}
VRF-b {
instance-type vrf;
route-distinguisher 20:200;
vrf-target target:200:100;
vrf-table-label;
}
デバイスの設定が完了したら、設定モードから commit を入力します。
検証
ポリシー設定の確認
目的
設定されたセキュリティポリシーに関する情報を確認します。
アクション
動作モードから、 show security policies コマンドを入力して、デバイスに設定されているすべてのセキュリティポリシーの概要を表示します。
user@root> show security policies
Default policy: deny-all
Default policy log Profile ID: 0
Pre ID default policy: permit-all
Default HTTP Mux policy: permit-all
From zone: vrf-zone1, To zone: vrf-zone2
Policy: pol1, State: enabled, Index: 4, Scope Policy: 0, Sequence number: 1, Log Profile ID: 0
Source vrf group: any
Destination vrf group: any
Source addresses: any
Destination addresses: any
Applications: any
Dynamic Applications: any
Source identity feeds: any
Destination identity feeds: any
Gbp source tags: 0
Gbp destination tags: 0
Action: permit
From zone: vrf-zone1, To zone: trust
Policy: pol2, State: enabled, Index: 5, Scope Policy: 0, Sequence number: 1, Log Profile ID: 0
Source vrf group: any
Destination vrf group: any
Source addresses: any
Destination addresses: any
Applications: any
Dynamic Applications: any
Source identity feeds: any
Destination identity feeds: any
Gbp source tags: 0
Gbp destination tags: 0
Action: permit
ゾーン設定の確認
目的
設定されたセキュリティゾーンに関する情報を検証します。
アクション
動作モードから、 show security zones コマンドを入力して、デバイスに設定されているすべてのセキュリティ ゾーンの概要を表示します。
user@root> show security zones
Security zone: vrf-zone1
Zone ID: 7
Send reset for non-SYN session TCP packets: Off
Policy configurable: Yes
Interfaces bound: 0
Interfaces:
Vrfs bound: 1
Vrf:
VRF-a
Advanced-connection-tracking timeout: 1800
Unidirectional-session-refreshing: No
Security zone: vrf-zone2
Zone ID: 8
Send reset for non-SYN session TCP packets: Off
Policy configurable: Yes
Interfaces bound: 0
Interfaces:
Vrfs bound: 1
Vrf:
VRF-b
Advanced-connection-tracking timeout: 1800
Unidirectional-session-refreshing: No
Security zone: trust
Zone ID: 9
Send reset for non-SYN session TCP packets: Off
Policy configurable: Yes
Interfaces bound: 1
Interfaces:
ge-0/0/1.0
Vrfs bound: 0
Vrf:
Advanced-connection-tracking timeout: 1800
Unidirectional-session-refreshing: No