アプリケーション ファイアウォール
AppFW(アプリケーション ファイアウォール)は、アプリケーション シグネチャに基づいて、トラフィックに対するポリシーベースの適用と制御を行います。AppFW を使用すると、企業が認可していないアプリケーション トラフィックをブロックできます。詳細については、以下のトピックを参照してください。
アプリケーション・ファイアウォールの概要
このトピックは、以下のセクションで構成されています。
ステートフル・ファイアウォールの制限
従来、ステートフル ファイアウォールは HTTP、SMTP、DNS などのアプリケーションの制御に使用され、既知の標準ポートのみを使用したためでした。ただし、クライアントとサーバーが同じプロトコルと同じポートを使用している限り、現在は任意のポートでこれらのアプリケーションを実行できます。この標準のステートフル ファイアウォールは見つめ方の良いアプリケーションを検出できないのです。さらに、Web アプリケーションの人気が高まり、従来の完全なクライアントベースのアプリケーションから Web への移行にととづいて、HTTP を介して送信されるトラフィックがますます増え続けています。
このステートフル ファイアウォールの制限:ファイアウォールがレイヤー 3 とレイヤー 4 に基づいてトラフィックを検査し、オープンな状態でアプリケーション レイヤーのエクスプロイトを可能にします。
アプリケーション ファイアウォール
ジュニパーネットワークス AppFW(アプリケーション ファイアウォール)は、アプリケーション識別の結果を活用して、アプリケーションに基づいてトラフィックの許可、拒否、拒否、リダイレクトを、情報に基づいて決定します。AppFW を使用すると、レイヤー 7 トラフィックにポリシー制御を適用できます。
事前定義された署名データベースは、 セキュリティエンジニアリングのWebジュニパーネットワークスで使用できます。このデータベースには、アプリケーションシグネチャーのライブラリが含まれています。詳細 については、「 アプリケーション シグネチャ 」を参照してください。これらの署名ページでは、アプリケーションのカテゴリ、グループ、リスクレベル、ポートなどについて可視化できます。
AppFW では、アプリケーション シグネチャに基づいてアプリケーションをブロックしながら、他の HTTP トラフィックがファイアウォールを通過することを許可できます。たとえば、アプリケーション ファイアウォール ルールによって Facebook からの HTTP トラフィックをブロックできますが、MS Outlook からの HTTP トラフィックへの Web アクセスを許可できます。
アプリケーション ファイアウォールのメリット
ユーザー定義のポリシーに基づき、リスクの高いアプリケーションに対してきめ細かなセキュリティ制御を提供します。
要件に基づいてアプリケーション アクセスに対するポリシー制御を提供し、柔軟性を高め、
統合ポリシーを使用したアプリケーション ファイアウォール
最初のJunos OS リリース 18.2R1、統一されたポリシーを使用して、AppFW 設定と同じ機能を使用できます。統合ポリシーは、アプリケーション識別(AppID)サービスからのアプリケーション アイデンティティ情報を活用して、トラフィックの許可、拒否、拒否、またはリダイレクトを行います。統合ポリシー設定は、アプリケーション ファイアウォールのすべての機能を処理し、ファイアウォール ポリシーの設定タスクを簡素化します。
AppFW を構成するための以下のトピックのいずれかを読む:
Junos OS バージョン 18.2 以降のリリースを使用している場合は、統合ポリシーを設定して、従来の AppFW と同じメリットを得る必要があります。「 統合 ポリシーを使用したアプリケーション ファイアウォールのサポート 」を参照してください。
18.2 Junos OS以前のバージョンをJunos OSは、従来の AppFW を設定できます。「 アプリケーション ファイアウォールの概要 」 を参照してください。
統合ポリシーを使用したアプリケーション ファイアウォールのサポート
Junos OS リリース 18.2R1 から、SRX シリーズ デバイスと vSRX インスタンスは統一されたポリシーをサポートし、従来のセキュリティ ポリシー内でレイヤー 7 動的アプリケーションをきめ細かく制御し、適用できます。
統合ポリシーは、動的アプリケーションを既存の 5 要素または 6 要素(ユーザー ファイアウォールを使用する 5 要素)の一致条件の一部として、一致条件として使用し、時間のとともにアプリケーションの変更を検出できるセキュリティ ポリシーです。
APPFW の機能を使用して、Junos OS リリース 18.2R1をアップグレードする場合は、次の点に注意してください。
ステートメントやコマンドに関連CLI AppFW 関連の情報はすべて削除されます。つまり
Junos OS から、18.2R1 AppFW(アプリケーション ファイアウォール)の機能がすぐに削除されるのではなく、取り除かれます。下位互換性を実現し、設定を新しい構成に準拠する機会を提供します。この変更の一環として、階層と、この階層の下のすべての設定オプション
[edit security application-firewall]
が展開されます。AppFW 機能は、指定した階層で構成を続ける場合に機能します。AppFW は、展開済み階層に手動入力CLIで設定できます。
従来の AppFW ポリシーと、同じセキュリティ ポリシー内の統一ポリシーはサポートされていません。そうしようとすると、次のエラー メッセージが表示されます。
Traditional AppFW and dynamic-application can't be applied to same policy
新しいリリース リリース Junos OSからそれ18.2R1以前のバージョンにダウングレードする場合は、次Junos OS。
ダウングレード後にコミット チェックエラーが発生しないようにするには、すべての統合ポリシーを削除する必要があります。
統合ポリシーの設定については、「 統合セキュリティ ポリシーの設定 」 を参照してください。
詳細については、
例: 統合ポリシーを使用したアプリケーション ファイアウォールの設定
この例では、アプリケーションに基づいてトラフィックを許可またはブロックする統合ポリシーを設定する方法について説明します。
システム要件
システム要件
この例では、次のハードウェアとソフトウェアのコンポーネントを使用しています。
SRX シリーズを実行しているJunos OSのデバイスを18.2R1。この構成例は、このリリースリリースJunos OSしてテスト19.1R1。
開始する前に
お使いのデバイスに有効なアプリケーション識別機能ライセンスSRX シリーズします。「 デバイス ライセンスのJunos OS 」 を参照してください。
アプリケーション署名パッケージJunos OSをダウンロードしてインストールします。 アプリケーション署名パッケージJunos OSをダウンロードしてインストールする。
概要
この例では、Yahoo-Mail や Facebook-Access などの特定のアプリケーションおよびアプリケーション グループをブロックする一般的なシナリオを作成します。
トポロジ
この例では、図 1 に示すトポロジー を使用しています。
この例では、以下のゾーンとインターフェイスの設定を使用しています。
クライアントシステムは、IPアドレス4.0.0.254/24を持つge-0/0/0.0インターフェイスに接続されています。Trustゾーンの一部です
サーバー システムは、IPアドレス5.0.0.254/24を持つge-0/0/1.0インターフェイスに接続されています。Untrustゾーンの一部です
次の手順に従って、特定のアプリケーションをブロックするセキュリティ ポリシーの設定を作成します。
ゾーン信頼から Untrust へのトラフィックに対するセキュリティ ポリシーを作成して、Yahoo-Mail や Facebook-Access アプリケーションへのアクセスをブロックします。
拒否または拒否されたトラフィックのリダイレクト メッセージを作成して、ユーザーにリクエストのステータスを通知します。
残りのトラフィックを許可するデフォルト ポリシーを作成します。
構成
CLI迅速な設定
この例を迅速に設定するには、以下のコマンドをコピーして、テキスト ファイルに貼り付け、改行を削除し、ネットワーク設定に一致する必要がある詳細情報を変更し、コマンドを階層レベルで CLI にコピー アンド ペーストして、設定モードから を入力します。 [edit]
commit
set security dynamic-application profile profile1 redirect-message type custom-text content "THIS APPLICATION IS BLOCKED" set security policies from-zone trust to-zone untrust policy policy-1 match source-address any set security policies from-zone trust to-zone untrust policy policy-1 match destination-address any set security policies from-zone trust to-zone untrust policy policy-1 match application any set security policies from-zone trust to-zone untrust policy policy-1 match dynamic-application junos:YAHOO-MAIL set security policies from-zone trust to-zone untrust policy policy-1 match dynamic-application junos:FACEBOOK-ACCESS set security policies from-zone trust to-zone untrust policy policy-1 then reject profile profile1 set security policies default-policy permit-all set security zones security-zone trust host-inbound-traffic system-services all set security zones security-zone trust interfaces ge-0/0/0.0 set security zones security-zone untrust host-inbound-traffic system-services all set security zones security-zone untrust interfaces ge-0/0/1.0 set interfaces ge-0/0/0 unit 0 family inet address 4.0.0.254/24 set interfaces ge-0/0/1 unit 0 family inet address 5.0.0.254/24
手順
手順
手順
次の例では、設定階層内のさまざまなレベルに移動する必要があります。その方法の詳細については、「 ネットワーク ユーザーガイド 」CLI モードでの CLI CLI プロファイル エディターの使用 を参照してください。
動的アプリケーションを使用して統一ポリシーを設定するには、以下の手順に示します。
セキュリティ ゾーンとインターフェイスを設定します。
[edit]
user@host#
set security zones security-zone trust host-inbound-traffic system-services alluser@host#
set security zones security-zone trust interfaces ge-0/0/0.0user@host#
set security zones security-zone untrust host-inbound-traffic system-services alluser@host#
set security zones security-zone untrust interfaces ge-0/0/1.0user@host#
set interfaces ge-0/0/0 unit 0 family inet address 4.0.0.254/24user@host#
set interfaces ge-0/0/1 unit 0 family inet address 5.0.0.254/24リダイレクト プロファイルを作成します。
[edit]
user@host#
set security dynamic-application profile profile1 redirect-message type custom-text content "THIS APPLICATION IS BLOCKED"動的アプリケーションを一致条件として使用するセキュリティ ポリシーを作成します。
[edit]
user@host#
set security policies from-zone trust to-zone untrust policy policy-1 match source-address anyuser@host#
set security policies from-zone trust to-zone untrust policy policy-1 match destination-address anyuser@host#
set security policies from-zone trust to-zone untrust policy policy-1 match application anyuser@host#
set security policies from-zone trust to-zone untrust policy policy-1 match dynamic-application junos:YAHOO-MAILuser@host#
set security policies from-zone trust to-zone untrust policy policy-1 match dynamic-application junos:FACEBOOK-ACCESSuser@host#
set security policies from-zone trust to-zone untrust policy policy-1 then reject profile profile1残りのトラフィックを許可するデフォルト ポリシーを作成します。
[edit]
user@host#
set security policies default-policy permit-all
結果
設定モードから、 コマンドを入力して設定を確認 show security policies
します。出力結果に意図した設定結果が表示されない場合は、この例の設定手順を繰り返して設定を修正します。
[edit]
user@host#
show security dynamic-application { profile profile1 { redirect-message { type { custom-text { content "THIS APPLICATION IS BLOCKED"; } } } } } policies { from-zone trust to-zone untrust { policy policy-1 { match { source-address any; destination-address any; application any; dynamic-application [junos:YAHOO-MAIL junos:FACEBOOK-ACCESS ]; } then { reject { profile profile1; } } } } default-policy { permit-all; } } zones { security-zone trust { host-inbound-traffic { system-services { ping; } } interfaces { ge-0/0/0.0; } } security-zone untrust { host-inbound-traffic { system-services { ping; } } interfaces { ge-0/0/1.0; } } }
[edit]
user@host#
show interfaces ge-0/0/0 { unit 0 { family inet { address 4.0.0.254/24; } } } ge-0/0/1 { unit 0 { family inet { address 5.0.0.254/24; } } } fxp0 { unit 0 { family inet { address 10.102.70.185/24; } } }
デバイスの設定が完了したら、設定モード commit
から を入力します。
検証
以下の手順を使用して、ポリシー設定の確認を行います。
ポリシー アクションの検証
目的
統合ポリシーによって、構成済みのアプリケーションがブロックされていることを検証します。
アクション
Web ブラウザーから、アプリケーションにアクセスしてみてください。たとえば、Yahoo-Mail などです。次の図に示すように、システムにリダイレクト メッセージが表示されます。
意味
セキュリティ ポリシーが動的アプリケーションに基づくトラフィックを拒否すると、出力には動的アプリケーション プロファイルの設定通りリダイレクト メッセージが表示されます。
統合ポリシー設定の検証
目的
統合ポリシー設定が正しいか検証します。
アクション
動作モードから、 コマンドを入力して、デバイス上のすべてのセキュリティ ポリシーの詳細なサマリ show security policies detail
を表示します。
user@host>
show security policies detail Default policy: permit-all Pre ID default policy: permit-allPolicy: policy-1, action-type: reject,
State: enabled, Index: 7, Scope Policy: 0 Policy Type: Configured Sequence number: 1 From zone: trust, To zone: untrust Source vrf group: any Destination vrf group: any Source addresses: any-ipv4(global): 0.0.0.0/0 any-ipv6(global): ::/0 Destination addresses: any-ipv4(global): 0.0.0.0/0 any-ipv6(global): ::/0 Application: any IP protocol: 0, ALG: 0, Inactivity timeout: 0 Source port range: [0-0] Destination ports: [0-0] Dynamic Application:junos:FACEBOOK-ACCESS: 244
junos:YAHOO-MAIL: 236
dynapp-redir-profile: profile1(1)
Per policy TCP Options: SYN check: No, SEQ check: No, Window scale: No
意味
出力には、セキュリティ ポリシーに関する情報が表示されます。次の情報を検証します。
設定済みのポリシー名 policy-1 とポリシー アクションは拒否します。
動的アプリケーション junos:FACEBOOK-ACCESS および junos:YAHOO-MAIL を設定します。
リダイレクト プロファイル プロファイル1
従来のアプリケーション ファイアウォール
このトピックは、以下のセクションで構成されています。
- アプリケーション ファイアウォールの仕組みについて
- アプリケーション ファイアウォール ルール セットとルール
- ALG を使用したアプリケーション ファイアウォール
- 不明なアプリケーション
- アプリケーション ファイアウォールのセッション ロギング
- シャーシ クラスタでのアプリケーション ファイアウォールのサポート
アプリケーション ファイアウォールの仕組みについて
既存のセキュリティ ポリシーを使用して従来のファイアウォール制御をトラフィックに適用できるように、AppFW モジュールを使用して、アプリケーション シグネチャに基づいて特定のアプリケーション トラフィックをブロックしながら、他の HTTP トラフィックがファイアウォールを通過することを許可できます。
セキュリティ デバイスは、AppFW の設定時に、以下の順序でトラフィックを処理します。
セキュリティ ポリシーは、ポリシーで指定されたゾーン ペアと一致します。
セキュリティー ポリシーは、一致する条件(送信元と宛先の IP アドレス、送信元と宛先のポート、アプリケーション タイプ)を持つパケットを照合します。
セキュリティー ポリシーは、一致するトラフィックに以下のいずれかのアクションを適用します。
拒否 — クライアントに通知し、トラフィックをドロップして、イベントをログに記録します。
拒否 — トラフィックをドロップし、イベントをログに記録します。
許可 — セッションを開き、イベントをログに記録し、指定された方法でサービスを適用します。
アプリケーション サービスを呼び出して、トラフィックのアプリケーション ID を取得します。
指定されたアプリケーション ファイアウォール ルール セットを適用します。
注:Junos OS リリース 20.1 以降のリリースを使用し、HTTP ベースのカスタム アプリケーション シグネチャを設定している場合、HTTPS トラフィックではレガシー アプリケーション ファイアウォール リダイレクト アクションが機能しない可能性があります。HTTPSトラフィックをリダイレクトするのではなく、セキュリティデバイスがトラフィックを拒否または拒否します。
注:セキュリティ デバイスで受信した IP フラグメント パケットはすべて、転送の前に再構成する必要があります。
アプリケーション ファイアウォール ルール セットとルール
アプリケーション ファイアウォールを構成する際には、以下の点を考慮してください。
1 つの AppFW ルール セットを複数の異なるセキュリティ ポリシーに適用できます。
論理システム内に AppFW を設定できます。
ルール内に複数の動的アプリケーションを設定し、ルール セット内で複数のルールを設定できます。ただし、ルール セットとルールの全体数には制限があります。
ルールで動的アプリケーション グループを一致条件として設定できます。アプリケーション グループには、関連する複数のアプリケーションが含まれています。詳細については、 アプリケーション識別用 の事前定義済みおよびカスタムアプリケーショングループ を参照してください。
デフォルト ルールは、ルールと一致しないトラフィックに必要なアクションを定義します。そのため、AppFWルールセットにはデフォルトのルールを含む必要があります。
ALG を使用したアプリケーション ファイアウォール
セキュリティ デバイスで ALG を有効にした場合、アプリケーション識別には ALG の結果がコントロール セッション内でアプリケーションを識別します。AppFW は、コントロール セッションが許可されるたびに ALG データ セッションを許可します。制御セッションが拒否された場合、データ セッションはありません。ALG を無効にした場合、アプリケーション識別はシグネチャに依存して制御セッションとデータ セッション内のアプリケーションを識別します。署名の一致が見つからなかった場合、アプリケーションは不明と見なされます。AppFWは、アプリケーション識別結果に基づいてアプリケーションを処理します。
不明なアプリケーション
アプリケーション識別では、ID junos:UNKNOWN によって未知の動的アプリケーションを分類します。AppID では、予約済みのキーワード junos:UNKNOWN を使用しています。
トラフィックはデータベースのアプリケーションシグネチャと一致しません。
アプリケーションを識別すると、システムでエラーが発生します。
セッションが別のデバイスに対して失敗します。
junos:UNKNOWN のアプリケーション ID を持つトラフィックは、ルールと junos:UNKNOWN の動的アプリケーションと一致します。junos:UNKNOWN に対してルールが定義されていない場合は、デフォルトのルールが適用されます。
アプリケーション ファイアウォールのセッション ロギング
セキュリティ ポリシーの下でログ オプションを有効にすることで、トラフィックをログに記録できます。表 1 に示す AppFW が設定されている場合、ログ メッセージを検査する際は、以下の 点に注意してください。
セキュリティ ポリシー アクション |
ログの作成 |
詳細 |
---|---|---|
許可 |
セッションを作成し、セッション作成メッセージをログに記録 |
セキュリティ ポリシー許可アクションによって AppFW ルールが適用される前でもセッションが作成されると、ログ メッセージには以下のいずれかの更新情報が含まれます。
|
拒否/拒否 |
ログはメッセージを拒否または拒否しますが、セッションは作成しません。 |
AppFW ルールがトラフィックを拒否または拒否すると、ログ メッセージには [理由] フィールドに以下のいずれかの語句が含まれます。
|
シャーシ クラスタでのアプリケーション ファイアウォールのサポート
セキュリティ デバイスがシャーシ クラスタ モードの場合、フェイルオーバーの前および実行後の AppFW アクションは、表 2 に示すアプリケーション識別状態 によって異なります。
フェイルオーバー前 |
フェイルオーバー後 |
||
---|---|---|---|
アプリケーション ID の状態 | アプリケーション ファイアウォール アクション | アプリケーション ID の状態 | アプリケーション ファイアウォール アクション |
成功 |
拒否 |
成功 |
拒否 |
成功 |
許可 |
成功 |
許可 |
保留 中 |
— |
未知 |
未知のアプリケーションに対して定義されたルールに基づいたアクション 未知のルールが定義されていない場合は、デフォルトのルールが適用されます。 |
シャーシ クラスタ モードでセキュリティ デバイスを使用している場合は、以下の点に注意してください。
アプリケーション識別を有効にした場合、事前に一致した状態のアプリケーション ID は他のノードと同期されません。まだ分類されていないフェイルオーバー セッションがある場合、アプリケーション ID は割り当てされません。これにより、アプリケーションの統計とカウンターが不一致する可能性があります。
シャーシ クラスタ インフラストラクチャのサポートが不足のため、インサービス ソフトウェア アップグレード(統合型 ISSU) は サポートされていません。このため、未知の動的アプリケーションを許可または拒否することで、アプリケーション ファイアウォール ポリシーを使用してフェイルオーバー イベントが制御されます。
詳細については、
アプリケーション ファイアウォールでリダイレクトを作成
AppFW は、トラフィックを拒否または拒否しても、クライアントにそのようなアクションが実行されたという通知をクライアントに通知しません。要求が拒否されたという気づいていないクライアントは、Web ページへのアクセスを試み続ける可能性があります。この不都合を軽減するために、Junos OS、アクションの説明を示したり、有益な Web ページにクライアントをリダイレクトしたりすることができます。次の例は、リダイレクト メッセージを作成する方法を示しています。
ブロック メッセージでリダイレクト
block-message
AppFW ルールの オプション reject
と または deny
アクションを使用します。
..... rule 1 { match { dynamic-application junos:FACEBOOK-CHAT } then { reject { block-message; } } } .....
AppFW がトラフィックを拒否すると、スプラッシュ画面に次のデフォルト メッセージがユーザーに表示されます。
user-name, Application Firewall has blocked your request to application FACEBOOK-CHAT at dst-ip:dst-port accessed from src-ip:src-port.
リダイレクト メッセージをカスタマイズ
スプラッシュ画面にテキストを追加したり、ユーザーをリダイレクトできる URL を指定したりして、リダイレクト アクションをカスタマイズできます。ブロック メッセージをカスタマイズするには、階層レベルでブロック メッセージ プロファイルを作成し、次のサンプルに示すタイプと [edit security application-firewall]
コンテンツを定義する必要があります。
... profile Redirect-Profile { block-message { type { custom-text { content "YOUR APPLICATION IS BLOCKED AS PER THE ORGANIZATION POLICY"; } } } } ...
次に、AppFW ルール セットでブロック メッセージ プロファイルを参照し、 オプションを使用して 1 つ以上のルールに適用 block-message
します。
rule-sets Ruleset-1 { rule 1 { match { dynamic-application junos:FACEBOOK-CHAT; } then { reject { block-message; } } } profile Redirect-Profile; }
この場合、AppFW は設定済みのルールに基づいてトラフィックを拒否するたびに、設定済みのブロック メッセージを表示します。
URL を使用してリダイレクト メッセージをカスタマイズ
AppFW がトラフィックを拒否またはリダイレクトすると、指定された Web ページにクライアントをリダイレクトして、詳細なアクションを実行できます。この URL は、デバイスのサーバーまたはSRX シリーズでホストできます。
次のサンプルに示すように、ブロックメッセージ タイプをカスタム リダイレクト URL として設定すると、別のサーバーへのリダイレクトを設定できます。
profile Redirect-Profile { block-message { type { custom-redirect-url { content http://abc.company.com/information; } } } }
次に、AppFW ルール セットでブロック メッセージ プロファイルを参照し、次のサンプルに示すオプションを使用して 1 つ以上のルール block-message
に適用します。
rule-sets Ruleset-1 { rule 1 { match { dynamic-application junos:FACEBOOK-CHAT; } then { reject { block-message; } } } profile Redirect-Profile; }
この場合、AppFW は設定したルールに基づいてトラフィックを拒否 http://abc.company.com/information、その使用を URL にリダイレクトします。
例: アプリケーション ファイアウォールの設定
この例では、セキュリティ ポリシー内でアプリケーション ファイアウォール ルール セットを設定する方法を示しています。
開始する前に
特定のデバイスにインストールされている有効なアプリケーション識別機能SRX シリーズライセンス。「 デバイス ライセンスのJunos OS 」 を参照してください。
アプリケーション署名パッケージをダウンロードJunos OSインストールします。 アプリケーション署名パッケージをJunos OSとインストールする。
システム要件
SRX シリーズがリリースJunos OS後のデバイス15.1X49-D60持ち込む。この設定例は、リリースリリースJunos OSテスト15.1X49-D60。
概要
この例では、表 3 で説明されている次の 2 つの一般的なシナリオ用にアプリケーション ファイアウォール を作成します。
目標 |
手順 |
結果 |
---|---|---|
特定のアプリケーションをブロックし、他のアプリケーションを許可 |
HTTP トラフィックを許可するセキュリティ ポリシーを設定します。 |
セキュリティ ポリシーは、指定されたレイヤー 3 またはレイヤー 4 の条件に一致するトラフィックを許可またはドロップします。 |
以下のオプションを使用して AppFW ルール セットを設定します。
|
AppFW は、レイヤー 7 で許可トラフィックをアプリケーション ID に基づいて評価します。 |
|
セキュリティ ポリシーで AppFW ルール セットを参照してください。 |
|
|
特定のアプリケーションを許可し、他のアプリケーションをブロックする |
HTTP トラフィックを許可するセキュリティ ポリシーを設定します。 |
セキュリティ ポリシーは、指定されたレイヤー 3 またはレイヤー 4 の条件に一致するトラフィックを許可またはドロップします。 |
以下のオプションを使用して AppFW ルール セットを設定します。
|
AppFW は、レイヤー 7 で許可トラフィックをアプリケーション ID に基づいて評価します。 |
|
セキュリティ ポリシーで AppFW ルール セットを参照してください。 |
|
すべてのモバイル デバイスSRX シリーズ、一部のサービス用 J-Web ページAppSecure事前対応です。機能の設定にはCLIを使用することをAppSecure推奨します。
構成
- 特定のアプリケーションを明示的に拒否し、その他すべての許可を行うアプリケーション ファイアウォール ルール
- 特定のアプリケーションを明示的に許可し、それ以外のアプリケーションを拒否するアプリケーション ファイアウォール ルール
特定のアプリケーションを明示的に拒否し、その他すべての許可を行うアプリケーション ファイアウォール ルール
この例では、動的アプリケーションをブロックします。 junos:FACEBOOK-CHAT junos:FACEBOOK-FARMVILLE を開き、残りのトラフィックを許可します。
CLI迅速な設定
この例を迅速に設定するには、以下のコマンドをコピーして、テキスト ファイルに貼り付け、改行を削除し、ネットワーク設定に一致する必要がある詳細情報を変更し、コマンドを階層レベルで CLI にコピー アンド ペーストして、設定モードから を入力します。 [edit]
commit
set security policies from-zone untrust to-zone trust policy policy1 match source-address any set security policies from-zone untrust to-zone trust policy policy1 match destination-address any set security policies from-zone untrust to-zone trust policy policy1 match application junos-http set security policies from-zone untrust to-zone trust policy policy1 then permit application-services application-firewall rule-set rs1 set security application-firewall rule-sets rs1 rule r1 match dynamic-application [junos:FACEBOOK-CHAT,junos:FACEBOOK-FARMVILLE ] set security application-firewall rule-sets rs1 rule r1 then deny set security application-firewall rule-sets rs1 default-rule permit
手順
次の例では、設定階層内のさまざまなレベルに移動する必要があります。その方法の詳細については、「 ユーザー ガイド 」CLIを参照してください。
異なる動的アプリケーションからのトラフィックを許可または拒否するアプリケーション ファイアウォール ルール セットを使用して、2 つのセキュリティ ポリシーを設定するには、以下の手順に従います。
選択した動的アプリケーションからのトラフィックを拒否するアプリケーション ファイアウォール ルール セットを定義します。
[edit security application-firewall rule-sets rs1] user@host# set rule r1 match dynamic-application [junos:FACEBOOK-CHAT,junos:FACEBOOK-FARMVILLE] user@host# set rule r1 then deny user@host# set default-rule permit
HTTP トラフィックを許可するセキュリティ ポリシーを設定し、アプリケーション ファイアウォール ルール セット rs1 を呼び出します。
[edit security policies from-zone untrust to-zone trust policy policy1] user@host# set match source-address any user@host# set match destination-address any user@host# set match application junos-http user@host# set then permit application-services application-firewall rule-set rs1
結果
設定モードから、 および コマンドを入力して設定 show security policies
を確認 show security application-firewall
します。出力結果に意図した設定が表示されない場合は、この例の設定手順を繰り返して設定を修正します。
[edit] user@host# show security policies from-zone untrust to-zone trust { policy 1 { match { source-address any; destination-address any; application junos-http; } then { permit { application-services { application-firewall { rule-set rs1; } } } } } } user@host# show security application-firewall rule-sets rs1 { rule r1 { match { dynamic-application [junos:FACEBOOK-CHAT,junos:FACEBOOK-FARMVILLE]; } then { deny; } } default-rule { permit; } }
デバイスの設定が完了したら、設定モード commit
から を入力します。
特定のアプリケーションを明示的に許可し、それ以外のアプリケーションを拒否するアプリケーション ファイアウォール ルール
この例では、動的アプリケーション junos:FACEBOOK-ACCESS を許可し、残りのトラフィックをブロックします。
CLI迅速な設定
この例を迅速に設定するには、以下のコマンドをコピーして、テキスト ファイルに貼り付け、改行を削除し、ネットワーク設定に一致する必要がある詳細情報を変更し、コマンドを階層レベルで CLI にコピー アンド ペーストして、設定モードから を入力します。 [edit]
commit
set security policies from-zone untrust to-zone trust policy policy2 match source-address any set security policies from-zone untrust to-zone trust policy policy2 match destination-address any set security policies from-zone untrust to-zone trust policy policy2 match application any set security policies from-zone untrust to-zone trust policy policy2 then permit application-services application-firewall rule-set rs2 set security application-firewall rule-sets rs2 rule r1 match dynamic-application [junos:FACEBOOK-ACCESS junos:UNKNOWN] set security application-firewall rule-sets rs2 rule r1 then permit set security application-firewall rule-sets rs2 default-rule deny
手順
次の例では、設定階層内のさまざまなレベルに移動する必要があります。その方法の詳細については、「 ユーザー ガイド 」CLIを参照してください。
異なる動的アプリケーションからのトラフィックを許可または拒否するアプリケーション ファイアウォール ルール セットを使用して、2 つのセキュリティ ポリシーを設定するには、以下の手順に従います。
アプリケーション ファイアウォール ルール セット rs2 を使用して、HTTP スタティック ポートに移動しないトラフィックを処理するセキュリティ ポリシーを設定します。
[edit security policies from-zone untrust to-zone trust policy policy2] user@host# set match source-address any user@host# set match destination-address any user@host# set match application junos:http user@host# set then permit application-services application-firewall rule-set rs2
選択した動的アプリケーションからのトラフィックを許可するアプリケーション ファイアウォール ルール セットを定義します。
[edit security application-firewall rule-sets rs2] user@host# set rule r1 match dynamic-application [junos:FACEBOOK-ACCESS, junos:UNKNOWN] user@host# set rule r1 then permit user@host# set default-rule deny
結果
設定モードから、 および コマンドを入力して設定 show security policies
を確認 show security application-firewall
します。出力結果に意図した設定が表示されない場合は、この例の設定手順を繰り返して設定を修正します。
[edit] user@host# show security policies from-zone untrust to-zone trust { policy 2 { match { source-address any; destination-address any; application junos:http; } then { permit { application-services { application-firewall { rule-set rs2; } } } } } } user@host# show security application-firewall rule-sets rs2 { rule r1 { match { dynamic-application [junos:FACEBOOK-ACCESS, junos:UNKNOWN]; } then { permit; } } default-rule { deny; } }
デバイスの設定が完了したら、設定モード commit
から を入力します。
検証
設定が正常に機能されていることを確認するには、次のタスクを実行します。
アプリケーション ファイアウォール設定の検証
目的
セキュリティ ポリシーで有効になっているアプリケーション ファイアウォールのサポートに関する情報を検証します。
アクション
アプリケーション ファイアウォールで有効になっているセキュリティー ポリシー設定を検証するには、 および コマンド show security policies
を入力 show security policies detail
します。デバイスに設定なすべてのアプリケーション ファイアウォール ルール セットを検証するには、 コマンドを入力 show security application-firewall rule-set all
します。
意味
出力には、システムで設定されたアプリケーション ファイアウォール対応ポリシーに関する情報が表示されます。以下の情報を検証します。
ルール セット
ルール
一致条件
例: アプリケーション グループを使用したアプリケーション ファイアウォールの設定
AppID(アプリケーション識別)モジュールは、事前定義されたアプリケーション グループを管理します。アプリケーション グループには 1 つの名前で関連するアプリケーションが含まれるので、任意のアプリケーション サービスで使用する場合に、シンプルで一貫性のある再利用が可能です。アプリケーション グループには、同時に複数のアプリケーションとアプリケーション グループを含めることができます。1 つのアプリケーションを複数のグループに割り当てできます。
AppFW ルールを設定して、定義済みのアプリケーション グループとアプリケーションを一致条件として指定することで、トラフィックを許可または拒否できます。
事前定義されたアプリケーション グループを使用する利点は、 - アプリケーションの署名データベースが変更されるに応じて、事前定義済みのアプリケーション グループが自動的に変更され、新しい署名が追加されます。この場合、事前定義されたアプリケーション グループを含む AppFW ルールがすでに存在する場合、アプリケーション グループに新しい署名を含めることは、既存の AppFW ルールに影響を与えるではありません。
この例では、AppFWルールセットでアプリケーショングループを設定する方法を示しています。
開始する前に
お使いのデバイスに有効なアプリケーション識別機能ライセンスSRX シリーズします。「 デバイス ライセンスのJunos OS 」 を参照してください。
アプリケーション署名パッケージをダウンロードJunos OSインストールします。 アプリケーション署名パッケージをダウンロードJunos OSインストールする。
システム要件
SRX シリーズがリリースJunos OS後のデバイス15.1X49-D60持ち込む。この設定例は、リリースリリースJunos OSテスト15.1X49-D60。
概要
この例では、trustゾーンから Untrustゾーンへのアウトバウンドトラフィックを制御するセキュリティポリシーを設定します。次に、特定のアプリケーション トラフィック(junos:GOOGLETALK)を許可する AppFW ルールを作成しますが、アプリケーション グループを使用してその他の既知のアプリケーション トラフィック(ソーシャル ネットワーキング トラフィック)を拒否します。
事前定義されたグループ junos:ソーシャル ネットワーキングには junos:GOOGLETALK アプリケーションが含まれるため、AppFW ルールの順序に注意することが非常に重要です。junos:GOOGLETALK トラフィックを許可して他のグループを拒否するには、junos:GOOGLETALK トラフィックを許可するルールを設定してから、グループ内の他のアプリケーションからのトラフィックを拒否するルールを設定する必要があります。
構成
手順
CLI迅速な設定
この例を迅速に設定するには、以下のコマンドをコピーして、テキスト ファイルに貼り付け、改行を削除し、ネットワーク設定に一致する必要がある詳細情報を変更し、コマンドを階層レベルで CLI にコピー アンド ペーストして、設定モードから を入力します。 [edit]
commit
set security application-firewall rule-sets social-network rule google-rule match dynamic-application junos:GOOGLETALK set security application-firewall rule-sets social-network rule google-rule then permit set security application-firewall rule-sets social-network rule denied-sites match dynamic-application-groups junos:social-networking set security application-firewall rule-sets social-network rule denied-sites match dynamic-application junos:UNKNOWN set security application-firewall rule-sets social-network rule denied-sites then deny set security application-firewall rule-sets social-network default-rule permit set security policies from-zone trust to-zone untrust policy outbound-traffic match source-address any set security policies from-zone trust to-zone untrust policy outbound-traffic match destination-address any set security policies from-zone trust to-zone untrust policy outbound-traffic match application junos:HTTP set security policies from-zone trust to-zone untrust policy outbound-traffic then permit application-services application-firewall rule-set social-network
手順
次の例では、設定階層内のさまざまなレベルに移動する必要があります。その方法の詳細については、 設定モードでのCLIを参照してください。
アウトバウンド トラフィックのアプリケーション ファイアウォール ルール セットとセキュリティ ポリシーを設定するには、以下の手順に従います。
ルールセットのソーシャル ネットワークを作成します。
[edit] user@host# set security application-firewall rule-sets social-network
Google-Talk トラフィックを許可するルールを定義します。
[edit security application-firewall rule-sets social-network] user@host# set rule google-rule match dynamic-application junos:GOOGLETALK user@host# set rule google-rule then permit
2 つ目のルールを定義して、未知のアプリケーションからのその他のすべてのソーシャル ネットワーキング トラフィックとトラフィックを拒否します。
[edit security application-firewall rule-sets social-network] user@host# set rule denied-sites match dynamic-application-groups junos:social-networking user@host# set rule denied-sites match dynamic-application junos:UNKNOWN user@host# set rule denied-sites then deny
ルールシーケンスは非常に重要です。junos:ソーシャル ネットワーキングでルールを作成する前に、junos:GOOGLETALK でルールを設定する必要があります。そうしないと、AppFW ルールは junos:social-networking に沿った GOOGLETALK トラフィックさえ拒否します。
他のすべてのトラフィックを許可するデフォルト ルールを定義します。
[edit security application-firewall rule-sets social-network] user@host# user@host# set default-rule permit
すべてのアウトバウンド トラフィックにソーシャル ネットワーク ルール セットを適用するには、アウトバウンド トラフィック ポリシーを設定します。
[edit security policies from-zone trust to-zone untrust policy outbound-traffic] user@host# set match source-address any user@host# set match destination-address any user@host# set match application junos:HTTP user@host# set then permit application-services application-firewall rule-set social-network
結果
設定モードから、 および コマンドを入力して設定 show security application-firewall
を確認 show security policies
します。出力結果に意図した設定結果が表示されない場合は、この例の手順を繰り返して設定を修正します。
[edit] user@host# show security application-firewall ... rule-sets social-network { rule google-rule { match { dynamic-application junos:GOOGLETALK; } } then { permit ; } rule denied-sites { match { dynamic-application-groups junos:social-networking dynamic-application junos:UNKNOWN; } then { deny ; } } default-rule { permit; } } ...
[edit] user@host# show security policies from-zone untrust to-zone trust { ... policy outbound-traffic { match { source-address any; destination-address any; application junos-http; } then { permit { application-services { application-firewall { rule-set social-network } } } } } ... }
デバイスの設定が完了したら、設定モード commit
から を入力します。
検証
アプリケーション ファイアウォール設定の検証
目的
アプリケーション ファイアウォール ポリシーで、アプリケーション グループのサポートに関する情報を検証します。
アクション
動作モードから、アプリケーション グループで有効になっているアプリケーション ファイアウォール ポリシーの設定を確認するには、 および コマンド
show security policies
を入力show security policies detail
します。デバイスに設定されたアプリケーション ファイアウォール ルール セットすべてが動作モードから確認するには、 コマンドを入力
show security application-firewall rule-set all
します。アプリケーション グループ内で定義されたアプリケーション リストを動作モードから検証するには、 コマンドを入力
show services application-identification application-group application-group-name
します。
例: SSL プロキシーが有効になっているときにアプリケーション ファイアウォールを構成する
この例では、SSL プロキシを有効にした際に AppFW を設定する方法について説明します。
の application junos-https 場合、SSL プロキシーは、そのセッションで識別された動的アプリケーションに基づいて SSL セッションを検知します。既知の Web サーバーが標準以外のポートを実行している場合は、カスタム Web サーバー アプリケーションJunos OSしてアプリケーションを識別できます。ただし、たとえばインターネット上で Web サーバーが分からない場合は、 を使用できます application any 。ポリシー ルールに含される SSL セッション以外は、SSL プロキシによって無視されます。これらのセッションSSL_PROXY_SESSION_IGNORE Syslog メッセージが送信されます。ジュニパーネットワークスは多くのトラフィックを生じ、初期の SSL プロキシー処理が発生してパフォーマンスに影響を与える可能性があるという点で、慎重にアプリケーション「任意」を使用推奨します。
SSL プロキシー プロファイルがセキュリティー ルールにアタッチされている場合、どのサービス(AppFW、IDP、または AppTrack)も構成されていない場合、セキュリティー デバイスは SSL プロキシー サービスをバイパスします。
要件
開始する前に、以下を実行します。
お使いのデバイスに有効なアプリケーション識別機能ライセンスSRX シリーズします。「 デバイス ライセンスのJunos OS 」 を参照してください。
アプリケーション署名パッケージをダウンロードJunos OSインストールします。 アプリケーション署名パッケージをJunos OSとインストールする。
ポリシーがそのタイプのトラフィックに適用されるアプリケーション(またはアプリケーション セット)を作成します。例 :セキュリティー ポリシー アプリケーションとアプリケーション セットの設定 を参照してください。
ポリシーを利用して SSL プロキシーを有効にする SSL プロキシー プロファイルを作成します。「 SSL フォワード プロキシーの設定 」を参照してください。
システム要件
SRX シリーズがリリースJunos OS後のデバイス15.1X49-D60持ち込む。この設定例は、リリースリリースJunos OSテスト15.1X49-D60。
概要
この例では、プレーンテキストまたは暗号化されたトラフィックからのトラフィックを許可または拒否するAppFWルールセットを使用して2つのセキュリティポリシーを設定します。
Oracleの暗号化バージョンを許可し、他の暗号化トラフィックを拒否します。
Hulu を除くすべての HTTP トラフィックを許可します。
構成
CLI迅速な設定
この例を迅速に設定するには、以下のコマンドをコピーして、テキスト ファイルに貼り付け、改行を削除し、ネットワーク設定に一致する必要がある詳細情報を変更し、コマンドを階層レベルで CLI にコピー アンド ペーストして、設定モードから を入力します。 [edit]
commit
set security policies from-zone Z_1 to-zone Z_2 policy policy1 match source-address any set security policies from-zone Z_1 to-zone Z_2 policy policy1 match destination-address any set security policies from-zone Z_1 to-zone Z_2 policy policy1 match application junos-https set security policies from-zone Z_1 to-zone Z_2 policy policy1 then permit application-services application-firewall rule-set appfw-rs-1 set security policies from-zone Z_1 to-zone Z_2 policy policy1 then permit application-services ssl-proxy profile-name ssl-profile-1 set security policies from-zone Z_1 to-zone Z_2 policy policy2 match source-address any set security policies from-zone Z_1 to-zone Z_2 policy policy2 match destination-address any set security policies from-zone Z_1 to-zone Z_2 policy policy2 match application junos-http set security policies from-zone Z_1 to-zone Z_2 policy policy2 then permit application-services application-firewall rule-set appfw-rs-2 set security application-firewall rule-sets appfw-rs-1 rule rule1 match dynamic-application [junos:ORACLE] set security application-firewall rule-sets appfw-rs-1 rule rule1 then permit set security application-firewall rule-sets appfw-rs-1 default-rule deny set security application-firewall rule-sets appfw-rs-2 rule rule1 match dynamic-application [junos:HULU] set security application-firewall rule-sets appfw-rs-2 rule rule1 then deny set security application-firewall rule-sets appfw-rs-2 default-rule permit
手順
手順
次の例では、設定階層内のさまざまなレベルに移動する必要があります。その方法の詳細については、「 ユーザー ガイド CLI 」を参照してください。
AppFW ルール セットと SSL プロキシ プロファイルを使用してトラフィックを処理するセキュリティ ポリシーを設定します。
[edit security policies from-zone Z_1 to-zone Z_2 policy policy1 user@host# set match source-address any user@host# set match destination-address any user@host# set match application junos-https user@host# set then permit application-services application-firewall rule-set appfw-rs-1 user@host# set then permit application-services ssl-proxy profile-name ssl-profile-1
AppFWルールセットで別のセキュリティポリシーを設定します。
[edit security policies from-zone Z_1 to-zone Z_2 policy policy2 user@host# set match source-address any user@host# set match destination-address any user@host# set match application junos-http user@host# set then permit application-services application-firewall rule-set appfw-rs-2
AppFWルールを定義して、Oracleトラフィックの暗号化バージョンを許可し、他の暗号化トラフィックを拒否します。
[edit security application-firewall rule-sets appfw-rs1] user@host# set rule rule1 match dynamic-application [junos:ORACLE] user@host# set rule rule1 then permit user@host# set default-rule deny
別の AppFW ルール セットを定義して、Hulu を除くすべてのプレーン テキスト トラフィックを許可します。
[edit security application-firewall rule-sets appfw-rs2] user@host# set rule rule1 match dynamic-application [junos:HULU] user@host# set rule rule1 then deny user@host# set default-rule permit
結果
設定モードから、 および コマンドを入力して設定 show security policies
を確認 show security application-firewall
します。出力結果に意図した設定が表示されない場合は、この例の設定手順を繰り返して設定を修正します。
デバイスの設定が完了したら、設定モード commit
から を入力します。
SSLプロキシー対応ポリシーでのアプリケーション・ファイアウォールの検証
目的
ポリシーで SSL プロキシーが有効になっているときに、アプリケーションが正しく構成されていることを検証します。
アクション
動作モードから コマンドを入力 show security policies
します。
次の出力は、 コマンドのオプションを示 show security flow session
しています。
user@host> show security flow session ?
Possible completions: <[Enter]> Execute this command application Application protocol name application-firewall Show application-firewall sessions application-firewall-rule-set Show application firewall sessions matching rule-set name brief Show brief output (default) destination-port Destination port (1..65535) destination-prefix Destination IP prefix or address dynamic-application Dynamic application name extensive Show detailed output + encrypted Show encrypted traffic family Show session by family idp Show idp sessions interface Name of incoming or outgoing interface nat Show sessions with network address translation protocol IP protocol number resource-manager Show sessions with resource manager session-identifier Show session with specified session identifier source-port Source port (1..65535) source-prefix Source IP prefix or address summary Show output summary tunnel Show tunnel sessions | Pipe through a command
SSL 暗号化不明セッションを表示するには、 コマンドを使用 show security flow session application-firewall dynamic-application junos:SSL extensive
します。
すべての HTTPS セッションを表示するには、 コマンドを使用 show security flow session application-firewall dynamic-application junos:HTTP encrypted extensive
します。