IDP ポリシー
Junos OS侵入検出および防止(IDP)ポリシーを使用すると、IDP対応デバイスを通過するネットワークトラフィックに対して、さまざまな攻撃検出および防止技術を選択的に適用できます。ゾーン、ネットワーク、アプリケーションに基づいて、トラフィックの一部を一致させるポリシールールを定義し、そのトラフィックに対してアクティブまたはパッシブな予防措置を講じることができます。
詳細については、次のトピックを参照してください。
IDP ポリシーの概要
IDP ポリシーは、デバイスがネットワークトラフィックを処理する方法を定義します。ネットワークを通過するトラフィックにさまざまな攻撃検知および防御技術を適用できます。
ポリシーは rule basesで構成され、各ルール ベースには一連の rulesが含まれます。トラフィックの一致条件、アクション、ロギング要件などのルールパラメータを定義し、ルールをルールベースに追加します。1つ以上のルールベースにルールを追加してIDPポリシーを作成した後、そのポリシーをデバイスのアクティブなポリシーとして選択できます。
Junos OSでは、複数のIDPポリシーを設定および適用できます。Junos OSリリース15.1X49-D20およびJunos OSリリース17.3R1以降、設定の検証は、アクティブポリシーとして設定されたIDPポリシーに対して行われます。複数のデバイスに同じIDPポリシーをインストールすることも、ネットワーク内の各デバイスに一意のIDPポリシーをインストールすることもできます。1つのポリシーには、任意のタイプのルールベースのインスタンスを1つだけ含めることができます。
IDP機能はデフォルトで有効になっています。ライセンスは不要です。IDP ポリシーのカスタム攻撃とカスタム攻撃グループは、有効なライセンスとシグニチャ データベースがデバイスにインストールされていない場合でも、設定およびインストールできます。
Junos OS Release 18.4R1以降、新しいIDPポリシーがロードされると、新しくロードされたポリシーを使用して既存のセッションが検査され、既存のセッションはIDP処理で無視されません。
次のリストでは、新しいポリシーがロードされた後の、既存のセッションの IDP インスペクションの変更について説明します。
パケットベースのシグネチャ - 新しいIDPポリシーでは、パケットベースの攻撃に対してIDPインスペクションが続行されます。
ストリームベースのシグネチャ - 終了オフセット番号がそのフローに渡されたバイト数よりも小さい新しいIDPポリシーからのストリームベースの攻撃に対してIDPインスペクションが続行されます。
コンテキストベースのシグネチャ - IDP インスペクションは、新しい IDP ポリシーがロードされた後もディテクタによって作成されたコンテキストベース攻撃に対して続行されますが、新しいディテクタでロードされる新しいポリシーは例外です。
次の IDP ポリシーがサポートされています。
DMZ_Services
DNS_Services
File_Server
Getting_Started
IDP_Default
推奨
Web_Server
次のタスクを実行して、IDP ポリシーを管理できます。
新しいIDPポリシーを最初から作成します。 例:IDP IPSルールベースのルールの定義を参照してください。
ジュニパーネットワークスが提供する定義済みテンプレートのいずれかを使用して、IDP ポリシーを作成します( 定義済み IDP ポリシー テンプレートについてを参照)。
ルール ベース内のルールを追加または削除します。次のいずれかの IDP オブジェクトを使用してルールを作成できます。
ゾーン
手記:from-zone が any の場合には送信元アドレスと送信元以外のアドレスを設定することができ、to-zone が any の場合には同様に宛先アドレスと宛先 except アドレスを設定することができます。
基本システムで利用可能なネットワークオブジェクト
ジュニパーネットワークスが提供する事前定義されたサービスオブジェクト
カスタムアプリケーションオブジェクト
ジュニパーネットワークスが提供する事前定義された攻撃オブジェクト
カスタム攻撃オブジェクトを作成します( 例:IDPシグネチャベース攻撃の設定 を参照)。
ジュニパーネットワークスが提供するシグネチャデータベースを更新します。このデータベースには、すべての定義済みオブジェクトが含まれています。
複数の IDP ポリシーを維持します。いずれかのポリシーをデバイスに適用できます。
各ユーザー論理システムのIDPポリシーはまとめてコンパイルされ、データプレーンメモリに保存されます。コンフィギュレーションに適したデータ プレーン メモリを見積もるには、次の 2 つの要素を考慮してください。
各ユーザー論理システムに適用される IDP ポリシーは、各ユーザー論理システムの ID とゾーンが異なるため、一意のインスタンスと見なされます。見積もりでは、すべてのユーザー論理システムの合計メモリ要件を考慮する必要があります。
アプリケーション データベースが増加すると、コンパイルされたポリシーはより多くのメモリを必要とします。メモリ使用量は、データベースの増加を考慮して、使用可能なデータ プレーン メモリ未満に保つ必要があります。
関連項目
統合ポリシーに対する IDP ポリシーサポートの理解
統合セキュリティポリシー内のIDPポリシーのサポート:
IDPポリシーは、
set security policies from-zone <zone-name> to-zone <zone-name> policy <policy-name> then permit application-services idp-policy <idp-policy-name>
コマンドを使用してアクティブにします。IDP ポリシーが統合セキュリティ ポリシー内で使用可能になると、明示的な送信元、宛先、またはアプリケーションが定義されていない限り(従来のポリシー)、すべての IDP 一致が統合ポリシー内で処理されます。
さらに、IDPで照合条件を設定して、検査の粒度を高めることができます。
送信元アドレスまたは宛先アドレス、送信元と宛先を除く、送信元と宛先のゾーン、またはアプリケーションの設定は、セキュリティ ポリシー自体で一致が発生するため、統合ポリシーでは必要ありません。
レイヤー 7 アプリケーションはセッションの有効期間中に変更される可能性があり、このアプリケーションの変更により、セッションの IDP サービスが無効になる可能性があります。
最初のセキュリティ ポリシーの一致は、単一または複数のポリシー一致になる可能性があります。セッションインタレストチェックの一環として、IDPポリシーが一致するルールのいずれかに存在する場合、IDPが有効になります。
従来のセキュリティ ポリシー(5 タプルの一致条件または動的アプリケーションを「なし」に設定)と統合ポリシー(6 タプルの一致条件)を設定した場合、従来のセキュリティ ポリシーは、統一されたポリシーの前に、最初にトラフィックを照合します。
一致条件の 1 つとして動的アプリケーションを含む統合ポリシーを設定すると、この構成によって IDP ポリシー設定に関連する追加の手順が不要になります。すべてのIDPポリシー設定は、統一セキュリティポリシー内で処理され、特定のセッションに対する攻撃や侵入を検出するようにIDPポリシーを設定するタスクを簡素化します。
統合ポリシーのための複数のIDPポリシーについて
セキュリティデバイスに統合ポリシーが設定されている場合、複数のIDPポリシーを設定し、そのうちの1つをデフォルトのIDPポリシーとして設定できます
セッションに複数のIDPポリシーが設定されていて、ポリシーの競合が発生した場合、デバイスはそのセッションにデフォルトのIDPポリシーを適用し、ポリシーの競合を解決します。
統合セキュリティポリシーで2つ以上のIDPポリシーを設定した場合は、デフォルトのIDPポリシーを設定する必要があります。
IDP ポリシーをデフォルトポリシーとして設定するには、 set security idp default-policy policy-name
コマンドを使用します。
動的アプリケーションが識別される前に行われる最初のセキュリティー・ポリシー・ルックアップ・フェーズでは、複数の潜在的なポリシーが一致する可能性があります。一致したセキュリティポリシーの少なくとも1つにIDPポリシーが設定されている場合、IDPはセッションで有効になります。
潜在的なポリシーリストにIDPポリシーが1つだけ設定されている場合、そのIDPポリシーがセッションに適用されます。
潜在的なポリシーリストのセッションに複数のIDPポリシーが設定されている場合、デバイスはデフォルトで設定されているIDPポリシーをIDPポリシーに適用します。
セッションで動的アプリケーションが識別された後、最終的に一致したポリシーにデフォルトのIDPポリシーとは異なるIDPポリシーが設定されている場合、ポリシーの再ルックアップが実行され、最終的に一致したポリシーに設定されたIDPポリシーが適用されます。
最終的に一致したセキュリティポリシーに、最初のセキュリティポリシールックアップ時に設定されたものと同じIDPポリシーがある場合、そのIDPポリシーがセッションに適用されます。
最終的に一致したセキュリティポリシーにIDPポリシーが設定されていない場合、セッションのIDP処理は無効になります。
統合ポリシーに対する複数のIDPポリシーとデフォルトのIDPポリシー構成の利点
複数の IDP ポリシーを柔軟に維持および使用できます。
デフォルトのIDPポリシー設定を使用してポリシーの競合を処理します。
統合ポリシーのためのIDPポリシー選択
このトピックでは、統合ポリシーの IDP ポリシー選択について詳しく説明します。
単一の IDP ポリシーを使用した IDP ポリシーの選択
セッションでセキュリティポリシーが処理される場合、最初のセキュリティポリシーの一致によって、単一または複数のポリシーが一致する場合があります。アプリケーション キャッシュが存在する場合、ポリシーの一致は 1 つのポリシーの一致になります。
セッションインタレストチェックの一環として、一致したルールのいずれかにIDPポリシーが存在する場合、IDPが有効になります。
動的アプリケーション識別が実行されると、セキュリティー・ポリシーによってポリシーの再検索が実行されます。レイヤー7アプリケーションサービス(IDP)は、最終的に一致したポリシーでIDPが設定されていない場合、自身を無効にするように通知されます。IDP ポリシーが統合セキュリティ ポリシー内で使用可能になると、明示的な送信元、宛先、またはアプリケーションが定義されていない限り(従来のポリシー)、すべての IDP 一致が統合ポリシー内で処理されます。送信元アドレスと宛先アドレス、送信元と宛先を除く、送信元と宛先のゾーン、またはアプリケーションの設定は、セキュリティ ポリシー自体で一致が行われるため、統合ポリシーでは必要ありません。 表 1 に、セキュリティ ポリシー内での IDP ポリシー選択の例を示します。
図 1 と 図 2 に、統合ポリシーの単一および複数の IDP ポリシー選択のワークフローの詳細を示します。
セキュリティポリシー | 送信元ゾーン | 送信元アドレス | 宛先ゾーン | 宛先アドレス | 動的アプリケーション | アプリケーション サービス | ポリシー |
---|---|---|---|---|---|---|---|
P1 |
で |
10.1.1.1 |
アウト |
任意 |
HTTP |
IDP |
推奨 |
P2 |
で |
10.1.1.1 |
アウト |
任意 |
ティッカー |
UTM |
utm_policy_1 |
複数の IDP ポリシーを使用した IDP ポリシーの選択
潜在的なポリシーリストに、異なる IDP ポリシーを持つ複数のポリシーが存在する場合、デバイスはデフォルトの IDP ポリシーとして設定された IDP ポリシーを適用します。
動的アプリケーションが識別された後、最終的に一致したポリシーにデフォルトのIDPポリシーとは異なるIDPポリシーが設定されている場合、ポリシーの再ルックアップが実行され、最終的に一致したポリシーに設定されたIDPポリシーが適用されます。
最終的に一致したセキュリティポリシーにIDPポリシーが設定されていない場合、セッションのIDP処理は無効になります。
ポリシー | 送信元ゾーン | 送信元アドレス | 宛先ゾーン | 宛先アドレス | 動的アプリケーション | アプリケーション サービス | ポリシー |
---|---|---|---|---|---|---|---|
P1 |
で |
10.1.1.1 |
アウト |
任意 |
HTTP |
IDP |
推奨 |
P2 |
で |
10.1.1.1 |
アウト |
任意 |
ティッカー |
UTM |
utm_policy_1 |
P3 |
で |
任意 |
アウト |
任意 |
ティッカー |
IDP |
IDPエンジン |
セッションに設定されたセキュリティポリシーの例を考えてみましょう。
If security policy P1 and policy P3 match for a session
IDP ポリシーの競合が観察されます。そのため、デフォルトのIDPポリシーとして設定されているIDPポリシーがこの場合に適用されます。
セキュリティ ポリシーが最後に一致した後、一致した IDP ポリシーに基づいて IDP ポリシーの再ルックアップが実行されます。最後に一致したセキュリティポリシーがポリシーP1の場合、recommendedという名前のIDPポリシーがセッションに適用されます。
If security policy P1 and policy P2 match for a session
一致したセキュリティポリシーにはIDPポリシーが1つしか設定されていないため、recommendedという名前のIDPポリシーがセッションに適用されます。
最後に一致したセキュリティポリシーがポリシーP1の場合、セッションインスペクションは引き続きrecommendedという名前のIDPポリシーを適用します。最後に一致したセキュリティポリシーがポリシーP2の場合、IDPは無効になり、セッションは無視されます。
例:統合セキュリティポリシーに対する複数の IDP ポリシーとデフォルトの IDP ポリシーの設定
トランジットトラフィックがIDPインスペクションを通過するには、セキュリティポリシーを設定し、検査するすべてのトラフィックでIDPアプリケーションサービスを有効にします。
この例では、デバイス上を流れるトラフィックに対してIDPサービスを初めて有効にするセキュリティポリシーを設定する方法を示しています。
必要条件
開始する前に、IDP 機能ライセンスをインストールまたは確認します。
この例では、以下のハードウェアとソフトウェアのコンポーネントを使用しています。
SRXシリーズファイアウォール。
Junos OS リリース 18.3R1 以降。
この設定例は、Junos OS リリース 18.3R1 を実行する SRX1500 デバイスを使用してテストされました。ただし、Junos OSの最新リリースを使用して、SRX300シリーズ、SRX550M、SRX4100、SRX4200、およびSRX5000ラインデバイスで同じ設定を使用できます。
概要
この例では、2つのセキュリティポリシーを設定して、SRX1500デバイス上のIDPサービスがtrustゾーンからuntrustゾーンへのすべてのトラフィックを検査できるようにします。
最初の手順として、ジュニパーネットワークスの Web サイトから署名データベースをダウンロードしてインストールする必要があります。次に、事前定義されたIDPポリシーテンプレートをダウンロードしてインストールし、事前定義されたポリシー「推奨」をアクティブなポリシーとしてアクティブ化します。
SRX 18.2以前のバージョンでは、すべてのファイアウォールルールに使用できるIDPポリシー名は1つだけで、active-policyはすべてのバージョンSecurity Directorで動作します。
Junos SRX 18.2 以降、 set security idp active-policy
を介したすべてのファイアウォールルールにアクティブな IDP ポリシー名を 1 つだけ使用する従来のポリシースタイルは非推奨になりました。
その代わり、IDPポリシーがセキュリティポリシー set security policies from-zone <zone-name> to-zone <zone-name> policy <policy-name> then permit application-services idp-policy idp-policy-name
コマンドで処理されることを参考に、統合ポリシーと同様の設定スタイルを従来のポリシーに使用します。
次に、trust ゾーンから untrust ゾーンに 2 つのセキュリティ ポリシーを作成し、ポリシーで指定された条件に一致するトラフィックに対して実行するアクションを指定する必要があります。
構成
プロシージャ
CLIクイック構成
設定中に手動による介入が必要なため、この例ではCLIクイック設定は使用できません。
手順
trustゾーンからuntrustゾーンへのトラフィックに対して、2つのセキュリティポリシーを作成します。
手記:以下の点にご注意ください。
-
Junos OSはリストの一番上からポリシールックアップを実行し、デバイスが受信したトラフィックに一致するものを見つけるとポリシールックアップを停止するため、SRXシリーズファイアウォールのセキュリティポリシーの順序は重要です。
-
SRXシリーズファイアウォールでは、デバイス全体でIDP検査を有効にする代わりに、ルールごとにセキュリティポリシーでIDP処理を有効にすることができます。
セキュリティ ポリシーは、IDP エンジンに送信されるトラフィックを識別し、IDP エンジンはそのトラフィックの内容に基づいて検査を適用します。IDP が有効になっていないセキュリティ ポリシーに一致するトラフィックは、IDP 処理を完全にバイパスします。IDP 処理用にマークされたセキュリティ ポリシーに一致するトラフィックは、その特定のセキュリティ ポリシーで設定された IDP ポリシーをイネーブルにします。
動的アプリケーションを一致条件とするセキュリティー・ポリシーP1を作成します。
[edit security policies] user@host# set from-zone trust to-zone untrust policy P1 match source-address any user@host# set from-zone trust to-zone untrust policy P1 match destination-address any user@host# set from-zone trust to-zone untrust policy P1 match application junos-defaults user@host# set from-zone trust to-zone untrust policy P1 match dynamic-application junos:HTTP
動的アプリケーションを一致条件とするセキュリティポリシーP2を作成します。
[edit security policies] user@host# set from-zone trust to-zone untrust policy P2 match source-address any user@host# set from-zone trust to-zone untrust policy P2 match destination-address any user@host# set from-zone trust to-zone untrust policy P2 match application junos-defaults user@host# set from-zone trust to-zone untrust policy P2 match dynamic-application junos:GMAIL
-
セキュリティポリシーで設定する IDP ポリシーを定義します。
[edit] user@host# set security idp idp-policy recommended user@host# set security idp idp-policy idpengine
「IDP ポリシールールと IDP ルールベース」の手順に従って IDP ポリシーを設定し、デフォルトの IDP ポリシーとして IDP ポリシー(推奨)の 1 つを設定します。
[edit]
user@host# set security idp default-policy recommendedデバイスに設定されている既定のポリシーを確認します。
[edit]
user@host# show security idp default-policydefault-policy recommended;
セキュリティポリシーで指定された条件に一致するトラフィックに対して実行するアクションを指定します。セキュリティー・ポリシー・アクションは、フローを許可することが必要です。
[edit security policies] user@host# set from-zone trust to-zone untrust policy P1 then permit application-services idp-policy recommended user@host# set from-zone trust to-zone untrust policy P2 then permit application-services idp-policy idpengine
SRX 18.3 バージョン以降では、セキュリティ ポリシーで異なる IDP ポリシーが使用され、セキュリティ ポリシーごとに一意の IDP ルールを処理できます。セキュリティポリシーで複数のIDPルールを使用する場合は、IDPデフォルトポリシーを設定する必要があります。
業績
設定モードから、 show security policies コマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の設定手順を繰り返して設定を修正します。
[edit]
user@host# show security policies
from-zone trust to-zone untrust {
policy P1 {
match {
source-address any;
destination-address any;
application junos-http;
}
then {
permit {
application-services {
idp-policy recommended;
}
}
}
}
}
from-zone trust to-zone untrust {
policy P2 {
match {
source-address any;
destination-address any;
application junos : GMAIL;
}
then {
permit {
application-services {
idp-policy idpengine;
}
}
}
}
}
デバイスの設定が完了したら、設定モードから commit
を入力します。
検証
IDP 設定の検証
目的
IDP 設定が正しく機能していることを確認します。
アクション
動作モードから、 show security idp status
コマンドを入力します。
user@host> show security idp status detail
PIC : FPC 0 PIC 0:
State of IDP: Default, Up since: 2013-01-22 02:51:15 GMT-8 (2w0d 20:30 ago)
Packets/second: 0 Peak: 0 @ 2013-02-05 23:06:20 GMT-8
KBits/second : 0 Peak: 0 @ 2013-02-05 23:06:20 GMT-8
Latency (microseconds): [min: 0] [max: 0] [avg: 0]
Packet Statistics:
[ICMP: 0] [TCP: 0] [UDP: 0] [Other: 0]
Flow Statistics:
ICMP: [Current: 0] [Max: 0 @ 2013-02-05 23:06:20 GMT-8]
TCP: [Current: 0] [Max: 0 @ 2013-02-05 23:06:20 GMT-8]
UDP: [Current: 0] [Max: 0 @ 2013-02-05 23:06:20 GMT-8]
Other: [Current: 0] [Max: 0 @ 2013-02-05 23:06:20 GMT-8]
Session Statistics:
[ICMP: 0] [TCP: 0] [UDP: 0] [Other: 0]
ID Name Sessions Memory Detector
0 Recommended
0 2233 12.6.160121210
意味
サンプル出力では、アクティブなポリシーとして推奨される事前定義された IDP ポリシーが表示されます。
例:従来のセキュリティポリシーでのIDPの有効化
Junos SRX 18.2 以降、 set security idp active-policy
を介したすべてのファイアウォールルールにアクティブな IDP ポリシー名を 1 つだけ使用する従来のポリシースタイルは非推奨になりました。
その代わり、IDPポリシーがセキュリティポリシー set security policies from-zone <zone-name> to-zone <zone-name> policy <policy-name> then permit application-services idp-policy idp-policy-name
コマンドで処理されることを参考に、統合ポリシーと同様の設定スタイルを従来のポリシーに使用します。
この例では、2つのセキュリティポリシーを設定して、セキュリティデバイス上を双方向に流れるすべてのHTTPおよびHTTPSトラフィックでIDPサービスを有効にする方法を示しています。このタイプの構成は、機密通信に対する追加のセキュリティ対策として、内部ネットワークの安全な領域との間のトラフィックを監視するために使用できます。
この例では、 Zone2
は内部ネットワークの一部です。
必要条件
始める前に:
ネットワークインターフェイスを設定します。
セキュリティ ゾーンを作成します。 例:セキュリティ・ゾーンの作成を参照してください。
アプリケーションを構成します。 例:IDP アプリケーションおよびサービスの設定を参照してください。
IDP ポリシーの設定。 IDPポリシールールとIDPルールベースを参照してください。
概要
トランジットトラフィックがIDPインスペクションを通過するには、セキュリティポリシーを設定し、検査するすべてのトラフィックでIDPアプリケーションサービスを有効にします。セキュリティポリシーには、ネットワーク上で許可するトラフィックの種類と、ネットワーク内でのトラフィックの処理方法を定義するルールが含まれています。セキュリティポリシーでIDPを有効にすると、指定された基準に一致するトラフィックがIDPルールベースに対してチェックされるように誘導されます。
IDPはデフォルトで有効になっています。ライセンスは不要です。IDP ポリシーのカスタム攻撃とカスタム攻撃グループは、有効なライセンスとシグニチャ データベースがデバイスにインストールされていない場合でも、設定およびインストールできます。
IDP インスペクションなしでトランジットトラフィックを通過できるようにするには、IDP アプリケーションサービスを有効にせずに、ルールの permit アクションを指定します。このルールの条件に一致するトラフィックは、IDP インスペクションなしでデバイスを通過します。
この例では、idp-app-policy-1とidp-app-policy-2の2つのポリシーを設定し、デバイス上で両方向に流れるすべてのHTTPおよびHTTPSトラフィックでIDPサービスを有効にする方法を示しています。idp-app-policy-1ポリシーは、以前に設定されたゾーン1からゾーン2に流れるすべてのHTTPおよびHTTPSトラフィックに、IDPルールベースと照合するように指示します。idp-app-policy-2ポリシーは、ゾーン2からゾーン1に流れるすべてのHTTPおよびHTTPSトラフィックがIDPルールベースと照合されるように指示します。
セキュリティポリシーアクションで設定したアクションは permitである必要があります。デバイスが拒否または拒否するトラフィックに対して IDP を有効にすることはできません。
従来のセキュリティポリシー(5タプルの一致条件または動的アプリケーションを「なし」に設定)と統合ポリシー(6タプルの一致条件)を設定した場合、従来のセキュリティポリシーは、統合ポリシーの前にトラフィックを最初に照合します。
動的アプリケーションを一致条件の 1 つとする統合ポリシーを設定すると、送信元アドレスと宛先アドレス、送信元以外の送信元宛先ゾーン、送信元ゾーンと宛先ゾーン、アプリケーションといった追加の設定手順が不要になります。すべてのIDPポリシー設定は、統一セキュリティポリシー内で処理され、特定のセッションに対する攻撃や侵入を検出するようにIDPポリシーを設定するタスクを簡素化します。送信元アドレスまたは宛先アドレス、送信元と宛先を除く、送信元と宛先のゾーン、またはアプリケーションの設定は、セキュリティ ポリシー自体で一致が発生するため、統合ポリシーでは必要ありません。
構成
プロシージャ
CLIクイック構成
この例を迅速に設定するには、以下のコマンドをコピーして、テキスト ファイルに貼り付け、改行を削除し、ネットワーク設定に一致させる必要がある詳細情報を変更し、コマンドを [edit]
階層レベルで CLI にコピー アンド ペーストして、設定モードから commit
を入力します。
set security policies from-zone Zone1 to-zone Zone2 policy idp-app-policy-1 match source-address any set security policies from-zone Zone1 to-zone Zone2 policy idp-app-policy-1 match destination-address any set security policies from-zone Zone1 to-zone Zone2 policy idp-app-policy-1 match application junos-http set security policies from-zone Zone1 to-zone Zone2 policy idp-app-policy-1 match application junos-https set security policies from-zone Zone1 to-zone Zone2 policy idp-app-policy-1 then permit application-services idp set security policies from-zone Zone2 to-zone Zone1 policy idp-app-policy-2 match source-address any set security policies from-zone Zone2 to-zone Zone1 policy idp-app-policy-2 match destination-address any set security policies from-zone Zone2 to-zone Zone1 policy idp-app-policy-2 match application junos-http set security policies from-zone Zone2 to-zone Zone1 policy idp-app-policy-2 match application junos-https set security policies from-zone Zone2 to-zone Zone1 policy idp-app-policy-2 then permit application-services idp
手順
次の例では、設定階層のいくつかのレベルに移動する必要があります。その方法の詳細については、 CLIユーザー ガイドの 設定モードでのCLIエディターの使用を参照してください。
デバイス上で両方向に流れるすべてのHTTPおよびHTTPSトラフィックでIDPサービスを有効にするには:
ゾーン1からゾーン2に流れるトラフィックのうち、junos-httpまたはjunos-httpsアプリケーショントラフィックとして識別されたセキュリティポリシーを作成します。
user@host# set security policies from-zone Zone1 to-zone Zone2 policy idp-app-policy-1 match source-address any user@host# set security policies from-zone Zone1 to-zone Zone2 policy idp-app-policy-1 match destination-address any user@host# set security policies from-zone Zone1 to-zone Zone2 policy idp-app-policy-1 match application junos-http user@host# set security policies from-zone Zone1 to-zone Zone2 policy idp-app-policy-1 match application junos-https
ポリシーで指定された条件に一致するゾーン1からゾーン2のトラフィックに対して実行するアクションを指定します。
user@host# set security policies from-zone Zone1 to-zone Zone2 policy idp-app-policy-1 then permit application-services idp
junos-http または junos-https アプリケーション トラフィックとして識別された逆方向に流れるトラフィックに対して、別のセキュリティ ポリシーを作成します。
user@host# set security policies from-zone Zone2 to-zone Zone1 policy idp-app-policy-2 match source-address any user@host# set security policies from-zone Zone2 to-zone Zone1 policy idp-app-policy-2 match destination-address any user@host# set security policies from-zone Zone2 to-zone Zone1 policy idp-app-policy-2 match application junos-http user@host# set security policies from-zone Zone2 to-zone Zone1 policy idp-app-policy-2 match application junos-https
このポリシーで指定された条件に一致するトラフィックに対して実行するアクションを指定します。
user@host# set security policies from-zone Zone2 to-zone Zone1 policy idp-app-policy-2 then permit application-services idp
アクティブポリシーを設定します。
user@host# set security idp active-policy recommended
業績
設定モードから、 show security policies
コマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の設定手順を繰り返して設定を修正します。
[edit] user@host# show security policies from-zone Zone1 to-zone Zone2 { policy idp-app-policy-1 { match { source-address any; destination-address any; application [junos-http junos-https]; } then { permit { application-services { idp; } } } } } from-zone Zone2 to-zone Zone1 { policy idp-app-policy-2 { match { source-address any; destination-address any; application [junos-http junos-https]; } then { permit { application-services { idp; } } } } }
デバイスの設定が完了したら、設定モードから commit
を入力します。
IDP ポリシーのコンパイルとロードステータスの検証
目的
IDP ログファイルを表示して、IDP ポリシーのロードとコンパイルステータスを確認します。IDPポリシーをアクティブ化すると、IDPログを表示し、ポリシーが正常にロードおよびコンパイルされたかどうかを確認できます。
アクション
IDP ポリシーのロードとコンパイルの進行状況を追跡するには、CLI で次のいずれかまたは両方を設定します。
/var/log/
に格納されるログ ファイルを構成し、トレース オプション フラグを設定してこれらの操作を記録できます。user@host# set security idp traceoptions file idpd user@host# set security idp traceoptions flag all
システムログメッセージを
/var/log
ディレクトリ内のファイルに記録するようにデバイスを設定できます。user@host# set system syslog file messages any any
CLI で設定をコミットした後、UNIX レベル シェルのシェル プロンプトから次のいずれかのコマンドを入力します。
サンプル出力
コマンド名
user@host> start shell user@host% tail -f /var/log/idpd Aug 3 15:46:42 chiron clear-log[2655]: logfile cleared Aug 3 15:47:12 idpd_config_read: called: check: 0 Aug 3 15:47:12 idpd commit in progres ... Aug 3 15:47:13 Entering enable processing. Aug 3 15:47:13 Enable value (default) Aug 3 15:47:13 IDP processing default. Aug 3 15:47:13 idp config knob set to (2) Aug 3 15:47:13 Warning: active policy configured but no application package installed, attack may not be detected! Aug 3 15:47:13 idpd_need_policy_compile:480 Active policy path /var/db/idpd/sets/idpengine.set Aug 3 15:47:13 Active Policy (idpengine) rule base configuration is changed so need to recompile active policy Aug 3 15:47:13 Compiling policy idpengine.... Aug 3 15:47:13 Apply policy configuration, policy ops bitmask = 41 Aug 3 15:47:13 Starting policy(idpengine) compile with compress dfa... Aug 3 15:47:35 policy compilation memory estimate: 82040 Aug 3 15:47:35 ...Passed Aug 3 15:47:35 Starting policy package... Aug 3 15:47:36 ...Policy Packaging Passed Aug 3 15:47:36 [get_secupdate_cb_status] state = 0x1 Aug 3 15:47:36 idpd_policy_apply_config idpd_policy_set_config() Aug 3 15:47:36 Reading sensor config... Aug 3 15:47:36 sensor/idp node does not exist, apply defaults Aug 3 15:47:36 sensor conf saved Aug 3 15:47:36 idpd_dev_add_ipc_connection called... Aug 3 15:47:36 idpd_dev_add_ipc_connection: done. Aug 3 15:47:36 idpd_policy_apply_config: IDP state (2) being set Aug 3 15:47:36 idpd_comm_server_get_event:545: evGetNext got event. Aug 3 15:47:36 idpd_comm_server_get_event:553: evDispatch OK Aug 3 15:47:36 Apply policy configuration, policy ops bitmask = 4 Aug 3 15:47:36 Starting policy load... Aug 3 15:47:36 Loading policy(/var/db/idpd/bins/idpengine.bin.gz.v + /var/db/idpd/sec-repository/installed-detector/libidp-detector.so.tgz.v + /var/db/idpd/bins/compressed_ai.bin)... Aug 3 15:47:36 idpd_dev_add_ipc_connection called... Aug 3 15:47:36 idpd_dev_add_ipc_connection: done. Aug 3 15:47:37 idpd_policy_load: creating temp tar directory '/var/db/idpd//bins/52b58e5' Aug 3 15:47:37 sc_policy_unpack_tgz: running addver cmd '/usr/bin/addver -r /var/db/idpd/sec-repository/installed-detector/libidp-detector.so.tgz.v /var/db/idpd//bins/52b58e5/__temp.tgz > /var/log/idpd.addver' Aug 3 15:47:38 sc_policy_unpack_tgz: running tar cmd '/usr/bin/tar -C /var/db/idpd//bins/52b58e5 -xzf /var/db/idpd//bins/52b58e5/__temp.tgz' Aug 3 15:47:40 idpd_policy_load: running cp cmd 'cp /var/db/idpd//bins/52b58e5/detector4.so /var/db/idpd//bins/detector.so' Aug 3 15:47:43 idpd_policy_load: running chmod cmd 'chmod 755 /var/db/idpd//bins/detector.so' Aug 3 15:47:44 idpd_policy_load: running rm cmd 'rm -fr /var/db/idpd//bins/52b58e5' Aug 3 15:47:45 idpd_policy_load: detector version: 10.3.160100209 Aug 3 15:47:45 idpd_comm_server_get_event:545: evGetNext got event. Aug 3 15:47:45 idpd_comm_server_get_event:553: evDispatch OK Aug 3 15:47:45 idp_policy_loader_command: sc_klibs_subs_policy_pre_compile() returned 0 (EOK) Aug 3 15:47:45 idpd_policy_load: IDP_LOADER_POLICY_PRE_COMPILE returned EAGAIN, retrying... after (5) secs Aug 3 15:47:50 idpd_comm_server_get_event:545: evGetNext got event. Aug 3 15:47:50 idpd_comm_server_get_event:553: evDispatch OK Aug 3 15:47:50 idp_policy_loader_command: sc_klibs_subs_policy_pre_compile() returned 0 (EOK) Aug 3 15:47:50 idpd_policy_load: idp policy parser pre compile succeeded, after (1) retries Aug 3 15:47:50 idpd_policy_load: policy parser compile subs s0 name /var/db/idpd/bins/idpengine.bin.gz.v.1 buf 0x0 size 0zones 0xee34c7 z_size 136 detector /var/db/idpd//bins/detector.so ai_buf 0x0 ai_size 0 ai /var/db/idpd/bins/compressed_ai.bin Aug 3 15:47:50 idpd_comm_server_get_event:545: evGetNext got event. Aug 3 15:47:50 idpd_comm_server_get_event:553: evDispatch OK Aug 3 15:47:50 idpd_comm_server_get_event:545: evGetNext got event. Aug 3 15:47:50 idpd_comm_server_get_event:553: evDispatch OK Aug 3 15:47:50 idpd_policy_load: idp policy parser compile succeeded Aug 3 15:47:50 idpd_comm_server_get_event:545: evGetNext got event. Aug 3 15:47:50 idpd_comm_server_get_event:553: evDispatch OK Aug 3 15:47:50 idpd_policy_load: idp policy pre-install succeeded Aug 3 15:47:50 idpd_comm_server_get_event:545: evGetNext got event. Aug 3 15:47:50 idpd_comm_server_get_event:553: evDispatch OK Aug 3 15:47:50 idpd_comm_server_get_event:545: evGetNext got event. Aug 3 15:47:50 idpd_comm_server_get_event:553: evDispatch OK Aug 3 15:47:50 idpd_policy_load: idp policy install succeeded Aug 3 15:47:50 idpd_comm_server_get_event:545: evGetNext got event. Aug 3 15:47:50 idpd_comm_server_get_event:553: evDispatch OK Aug 3 15:47:50 idpd_policy_load: idp policy post-install succeeded Aug 3 15:47:51 IDP policy[/var/db/idpd/bins/idpengine.bin.gz.v] and detector[/var/db/idpd/sec-repository/installed-detector/libidp-detector.so.tgz.v] loaded successfully. Aug 3 15:47:51 Applying sensor configuration Aug 3 15:47:51 idpd_dev_add_ipc_connection called... Aug 3 15:47:51 idpd_dev_add_ipc_connection: done. Aug 3 15:47:51 idpd_comm_server_get_event:545: evGetNext got event. Aug 3 15:47:51 idpd_comm_server_get_event:553: evDispatch OK Aug 3 15:47:51 idpd_comm_server_get_event:545: evGetNext got event. Aug 3 15:47:51 idpd_comm_server_get_event:553: evDispatch OK Aug 3 15:47:51 ...idpd commit end Aug 3 15:47:51 Returning from commit mode, status = 0. Aug 3 15:47:51 [get_secupdate_cb_status] state = 0x1 Aug 3 15:47:51 Got signal SIGCHLD....
サンプル出力
コマンド名
user@host> start shell user@host% tail -f /var/log/messages Aug 3 15:46:56 chiron mgd[2444]: UI_COMMIT_PROGRESS: Commit operation in progress: no commit script changes Aug 3 15:46:56 chiron mgd[2444]: UI_COMMIT_PROGRESS: Commit operation in progress: no transient commit script changes Aug 3 15:46:56 chiron mgd[2444]: UI_COMMIT_PROGRESS: Commit operation in progress: finished loading commit script changes Aug 3 15:46:56 chiron mgd[2444]: UI_COMMIT_PROGRESS: Commit operation in progress: exporting juniper.conf ..... Aug 3 15:47:51 chiron idpd[2678]: IDP_POLICY_LOAD_SUCCEEDED: IDP policy[/var/db/idpd/bins/idpengine.bin.gz.v] and detector[/var/db/idpd/sec-repository/installed-detector/libidp-detector.so.tgz.v] loaded successfully(Regular load). Aug 3 15:47:51 chiron idpd[2678]: IDP_COMMIT_COMPLETED: IDP policy commit is complete. ...... Aug 3 15:47:51 chiron chiron sc_set_flow_max_sessions: max sessions set 16384
意味
set security idp active-policy
コマンドをコミットした後にバックグラウンドで実行される手順を示すログ メッセージを表示します。このサンプル出力は、ポリシーのコンパイル、センサー構成、およびポリシーの読み込みが成功したことを示しています。