論理システムにおけるアプリケーションセキュリティ
論理システムのアプリケーションセキュリティにより、ポート、プロトコル、暗号化に関係なく、ネットワークを通過するアプリケーショントラフィックを識別できるため、ネットワークトラフィックを制御するための可視性が向上します。アプリケーションセキュリティは、正確なアプリケーション情報に基づいてセキュリティポリシーを設定および適用することで、ネットワークトラフィックを制御します。詳細については、次のトピックを参照してください。
論理システムについてアプリケーション識別サービス
事前定義されたアプリケーションシグネチャとカスタムアプリケーションシグネチャは、セッションの最初の数パケットのパターンを一致させることでアプリケーションを識別します。アプリケーションを識別すると、以下のようなメリットがあります。
侵入検出および防止(IDP)が、非標準ポートで実行されているアプリケーションに適切な攻撃オブジェクトを適用できるようにします。
デコーダーを使用しないアプリケーションの攻撃シグネチャの範囲を絞り込むことで、パフォーマンスを向上させます。
デバイスを通過するアプリケーションについて、AppTrackを使用して詳細なレポートを作成できます。
論理システムでは、事前定義されたアプリケーションシグネチャとカスタムアプリケーションシグネチャは、すべての論理システムによって共有されるグローバルリソースです。プライマリ管理者は、定義済みのジュニパーネットワークスアプリケーションシグネチャをダウンロードしてインストールし、カスタムアプリケーションシグネチャとネストされたアプリケーションシグネチャを作成して、事前定義されたデータベースに含まれていないアプリケーションを識別します。
アプリケーション識別はデフォルトで有効になっています。
アプリケーションシステムキャッシュ(ASC)は、アプリケーションタイプと対応する宛先IPアドレス、宛先ポート、プロトコルタイプ、サービス間のマッピングを保存します。各ユーザーの論理システムには独自のASCがあります。ユーザーの論理システム管理者は、 show services application-identification application-system-cache コマンドで論理システムのASCエントリーを表示できます。ユーザーの論理システム管理者は、 clear services application-identification application-system-cache コマンドを使用して、論理システムのASCエントリをクリアできます。
Junos OSリリース18.2R1以降、ASCのデフォルト動作は以下のように変更されています。
セキュリティポリシー、AppFW(アプリケーションファイアウォール)、AppTrack(アプリケーション追跡)、AppQoS(アプリケーションサービス品質)、ジュニパー ATP クラウド、IDP、コンテンツセキュリティなどのセキュリティサービスは、デフォルトではASCを使用しません。
APBR(Advanced Policy-based Routing)などのその他のサービスは、デフォルトでアプリケーション識別にASCを使用します。
詳細については、「 アプリケーション サービスのアプリケーション システム キャッシュの有効化または無効化」を参照してください。
プライマリ管理者は、任意の論理システムのASCエントリを表示またはクリアできます。プライマリ管理者は、 show services application-identification counter および clear services application-identification counter コマンドを使用してグローバルカウンターを表示またはクリアすることもできます。
アプリケーションシグネチャパッケージは、すべてのユーザー論理システムによって共有されるグローバルレベルでインストールされます。プライマリ論理システム管理者は、アプリケーションシグネチャパッケージをインストールまたはアンインストールできます。
Junos OSリリース18.3R1以降、論理システムのアプリケーション識別(AppID)サポートには、論理システム統計情報と論理システムカウンター統計情報を表示およびクリアするための2つの新しいオプションが含まれます。
プライマリ論理システム管理者はすべての論理システムの統計を表示またはクリアできます。一方、ユーザー論理システムの管理者は、自分の論理システムの統計情報を表示またはクリアできます。
ユーザーの論理システム管理者は、AppIDシグネチャパッケージのステータスとバージョンを表示できます。プライマリ論理システム管理者によって設定されたカスタムシグネチャは、論理システムセキュリティポリシーの使用で設定できます。
コマンド show services application-identification status と show services application-identification versionを使用して、AppIDシグネチャパッケージのステータスとバージョンに関するステータスとバージョン情報を表示できます。
関連項目
論理システムアプリケーションファイアウォールサービスについて
アプリケーションファイアウォールを使用すると、論理システムの管理者は、アプリケーションシグネチャで定義されたアプリケーション識別に基づいて、トラフィックのセキュリティポリシーを作成できます。アプリケーションファイアウォールは、標準のネットワークファイアウォールポリシーでは適切に制御できない可能性のある動的アプリケーショントラフィックに対する追加のセキュリティファイアウォールポリシーを提供します。アプリケーションファイアウォールは、特定のアプリケーションからのトラフィックを許可またはブロックすることで、情報送信を制御します。
アプリケーションファイアウォールを設定するには、識別された動的アプリケーションに対して実行するアクションを指定するルールを含むルールセットを定義します。ルールセットは独立して設定され、セキュリティポリシーに割り当てられます。各ルールセットには、少なくとも2つのルール、一致したルール(一致条件とアクションで構成)とデフォルトルールが含まれています。
一致したルールは、一致するトラフィックに対して実行されるアクションを定義します。トラフィックがルールで指定されたアプリケーションおよびその他の基準に一致する場合、ルールで指定されたアクションに基づいてトラフィックが許可またはブロックされます。
トラフィックがルールセット内の他のどのルールにも一致しない場合に、デフォルトのルールが適用されます。
プライマリ管理者は、ジュニパーネットワークスセキュリティエンジニアリングWebサイトから定義済みのアプリケーションシグネチャデータベースをダウンロードするか、Junos OS設定CLIを使用してアプリケーションシグネチャを定義できます。アプリケーション識別とアプリケーションシグネチャの詳細については、『 セキュリティデバイス向けセキュリティユーザーガイド』を参照してください。
論理システムでのアプリケーションファイアウォールの設定は、論理システムで設定されていないデバイスでのアプリケーションファイアウォールの設定と同じプロセスです。ただし、アプリケーションファイアウォールは、設定されている論理システムにのみ適用されます。プライマリ管理者は、プライマリ論理システムとデバイス上のすべてのユーザー論理システムでアプリケーションファイアウォールを設定、有効化、監視できます。ユーザー論理システム管理者は、アクセス権を持つユーザー論理システム上でのみ、アプリケーションファイアウォールを設定、有効化、監視できます。
関連項目
例:プライマリ論理システム用のアプリケーションファイアウォールサービスの設定
この例では、プライマリ管理者がプライマリまたはルート論理システム上でアプリケーションファイアウォールサービスを設定する方法を説明します。プライマリ管理者のみが、すべてのユーザー論理システムに加えて、プライマリ論理システムの設定、管理、および表示を行うことができます。
アプリケーションファイアウォールルールセットとルールを設定した後、プライマリ管理者はアプリケーションファイアウォールルールセット情報をプライマリ論理システムのセキュリティポリシーに追加します。
セキュリティポリシー内でアプリケーションファイアウォールを設定する方法については、 アプリケーションファイアウォールの概要を参照してください。
要件
始める前に:
すべてのインターフェイス、ルーティングインスタンス、セキュリティゾーンがプライマリ論理システムで設定されていることを確認します。
例:プライマリ論理システムのセキュリティ機能の設定を参照してください。
アプリケーションファイアウォールリソース(appfw-rule-setとappfw-rule)がセキュリティプロファイルに割り当てられ、[
system security-profile]コマンドを介してプライマリ論理システムにバインドされていることを確認します。アプリケーションファイアウォールリソースの場合、セキュリティプロファイル設定では、0〜10,000のルールセットと0〜10,000のルールを使用できます。注:プライマリ管理者は、セキュリティプロファイル設定を通じてさまざまなグローバルシステムリソースを割り当て、デバイス上のさまざまな論理システムにバインドされます。プライマリ管理者はこの機能を所有し、プライマリ論理システムだけでなく、すべてのユーザー論理システムのセキュリティプロファイルを設定します。
詳細については、論理システムについての セキュリティプロファイル(プライマリ管理者のみ)を参照してください。
プライマリ論理システムにプライマリ管理者としてログインします。
プライマリ管理者ロール機能については、 プライマリ論理システムとプライマリ管理者ロールについてを参照してください。
概要
この例では、例: ユーザー論理システム、その管理者、そのユーザー、相互接続論理システムの作成に示すroot-logical-systemと呼ばれるプライマリ論理システム上にアプリケーションファイアウォールサービスを作成します。
この例では、以下のアプリケーションファイアウォール設定を作成します。
ルールセットroot-rs1、ルールr1およびr2r1が一致すると、telnetトラフィックはファイアウォールの通過が許可されます。r2が一致すると、Webトラフィックはファイアウォールの通過が許可されます。
ルールセット、root-rs2、ルールr1r1が一致すると、example2のトラフィックはファイアウォールによってブロックされます。
すべてのルールセットには、ルールセットのどのルールにも指定されていないトラフィックを許可または拒否するかどうかを指定するデフォルトルールが必要です。デフォルトルールのアクション(許可または拒否)は、ルールセット内の他のルールに指定されたアクションとは反対である必要があります。
トポロジー
設定
手順
CLIクイックコンフィグレーション
この例をすばやく設定するには、以下のコマンドをコピーしてテキスト ファイルに貼り付け、改行を削除し、ネットワーク設定に一致させる必要がある詳細情報を変更し、コマンドを [edit] 階層レベルでCLIにコピー アンド ペーストして、設定モードから commit を入力します。
set logical-systems root-logical-system security application-firewall rule-sets root-rs1 rule r1 match dynamic-application junos:telnet set logical-systems root-logical-system security application-firewall rule-sets root-rs1 rule r1 then permit set logical-systems root-logical-system security application-firewall rule-sets root-rs1 rule r2 match dynamic-application-group junos:web set logical-systems root-logical-system security application-firewall rule-sets root-rs1 rule r2 then permit set logical-systems root-logical-system security application-firewall rule-sets root-rs1 default-rule deny set logical-systems root-logical-system security application-firewall rule-sets root-rs2 rule r1 match dynamic-application junos:facebook set logical-systems root-logical-system security application-firewall rule-sets root-rs2 rule r1 then deny set logical-systems root-logical-system security application-firewall rule-sets root-rs2 default-rule permit
ステップバイステップの手順
次の例では、設定階層のさまざまなレベルに移動する必要があります。その方法の詳細については、『Junos OS CLIユーザーガイド』の「 構成モードでのCLIエディターの使用 」を参照してください。
プライマリ論理システムにアプリケーションファイアウォールを設定するには:
プライマリ論理システムにプライマリ管理者としてログインします。 例:論理システムのrootパスワードの設定 を参照し、設定モードにします。
admin@host> configure admin@host#
root-logical-systemにアプリケーションファイアウォールルールセットを設定します。
[edit ] admin@host# set logical-systems security application-firewall rule-sets root-rs1
このルールセットのルールを設定し、ルールが一致させる動的アプリケーションと動的アプリケーショングループを指定します。
[edit] admin@host# set logical-systems security application-firewall rule-sets root-rs1 rule r1 match dynamic-application telnet then permit
このルールセットのデフォルトルールを設定し、識別された動的アプリケーションがルールセットのどのルールにも指定されていない場合に実行するアクションを指定します。
[edit] admin@host# set logical-systems security application-firewall rule-sets root-rs1 default-rule deny
必要に応じて、これらの手順を繰り返して、別のルールセットroot-rs2を設定します。
結果
設定モードから、 show security application-firewall rule-sets コマンドを入力して設定を確認します。出力に意図した設定が表示されない場合は、この例の設定手順を繰り返して修正します。
簡潔にするために、この show コマンド出力には、この例に関連する設定のみ含まれています。システム上のその他の設定はすべて省略記号(...)で置き換えられています。
[edit]
admin@host# show security application-firewall rule-sets all
...
application-firewall {
rule-sets root-rs1 {
rule r1 {
match {
dynamic-application [junos:telnet];
}
then {
permit;
}
}
default-rule {
deny;
}
}
rule-sets root-rs1 {
rule r2 {
match {
dynamic-application-group [junos:web];
}
then {
permit;
}
}
rule-sets root-rs2 {
rule r1 {
match {
dynamic-application [junos:FACEBOOK];
}
then {
deny;
}
}
default-rule {
permit;
}
}
デバイスの設定が完了したら、設定モードから commit を入力します。
検証
設定が正常に機能していることを確認します。
アプリケーションファイアウォール設定の確認
目的
プライマリ論理システム上のアプリケーションファイアウォール設定を表示します。
アクション
動作モードから、 show security application-firewall rule-set logical-system root-logical-system rule-set all コマンドを入力します。
admin@host> show security application-firewall rule-set logical-system root-logical-system rule-set all
Rule-set: root-rs1
Logical system: root-logical-system
Rule: r1
Dynamic Applications: junos:telnet
Action:permit
Number of sessions matched: 10
Default rule:deny
Number of sessions matched: 100
Number of sessions with appid pending: 2
Rule-set: root-rs1
Logical system: root-logical-system
Rule: r2
Dynamic Applications: junos:web
Action:permit
Number of sessions matched: 20
Default rule:deny
Number of sessions matched: 200
Number of sessions with appid pending: 4
Rule-set: root-rs2
Logical system: root-logical-system
Rule: r1
Dynamic Applications: junos:FACEBOOK
Action:deny
Number of sessions matched: 40
Default rule:permit
Number of sessions matched: 400
Number of sessions with appid pending: 10
論理システムについて アプリケーション追跡サービス
AppTrackは、ネットワークの帯域幅使用状況を分析するための統計情報を提供するアプリケーション追跡ツールです。有効にすると、AppTrackは指定されたゾーン内のアプリケーションフローのバイト、パケット、および期間の統計を収集します。デフォルトでは、各セッションが閉じると、AppTrackはセッションのバイト数とパケット数、期間を提供するメッセージを生成し、ホストデバイスに送信します。セキュリティ脅威対応マネージャー(STRM)がデータを取得し、フローベースのアプリケーション可視化を提供します。
AppTrackは、任意の論理システム内で有効化および設定できます。論理システムでのAppTrackの設定は、論理システム用に設定されていないデバイスでのAppTrackの設定と同じです。AppTrack 設定は、設定されている論理システムにのみ適用されます。論理システムの名前がAppTrackログに追加されます。プライマリ管理者は任意の論理システムにAppTrackを設定できますが、ユーザーの論理システム管理者は、ログインしている論理システムに対してのみAppTrackを設定できます。
システムログの設定はデバイス上でグローバルであり、プライマリ管理者が設定する必要があります。ユーザーの論理システム管理者は、論理システムのシステムログを設定できません。
カウンターは、送信されたログメッセージと失敗したログの数を追跡します。AppTrack カウンターは、デバイスに対してグローバルです。プライマリ管理者とユーザーの論理システム管理者は、 show security application-tracking counters コマンドでAppTrackカウンターを表示できます。
関連項目
例:ユーザー論理システム向けのアプリケーションファイアウォールサービスの設定
この例では、ユーザー論理システム管理者がユーザー論理システム上でアプリケーションファイアウォールサービスを設定する方法を説明します。ユーザー論理システム管理者は、独自のシステムアプリケーションファイアウォールルールセットとルールを管理および監視し、それぞれの論理システムで許可またはブロックされた動的アプリケーションを管理できます。
アプリケーションファイアウォールルールセットとルールを設定した後、ユーザー論理システム管理者は、アプリケーションファイアウォールルールセット情報を個々の論理システムのセキュリティポリシーに追加します。
セキュリティポリシー内でアプリケーションファイアウォールを設定する方法については、 アプリケーションファイアウォールの概要を参照してください。
要件
始める前に:
ユーザー論理システム用にセキュリティゾーンが設定されていることを確認します。
プライマリ管理者が、ユーザー論理システムにバインドされたセキュリティプロファイルにアプリケーションファイアウォールリソース(appfw-rule-setとappfw-rule)を割り当てていることを確認します。
詳細については、論理システムについての セキュリティプロファイル(プライマリ管理者のみ)を参照してください。
ユーザー論理システム管理者として論理システムにログインします。
ユーザー論理システム管理者ロールの機能については、「 ユーザー論理システムについて」および「ユーザー論理システム管理者ロール」を参照してください。
概要
この例では、例: ユーザー論理システム、その管理者、そのユーザー、相互接続論理システムの作成に示す ls-product-design ユーザー論理システム上にアプリケーションファイアウォールサービスを設定します。
この例では、以下のアプリケーションファイアウォール設定を作成します。
ルールセット、ls-product-design-rs1、ルールr1およびr2r1が一致すると、telnetトラフィックはファイアウォールの通過が許可されます。r2が一致すると、Webトラフィックはファイアウォールの通過が許可されます。
ルールセット、ls-product-design-rs2、ルールr1r1が一致すると、Facebookのトラフィックはファイアウォールによってブロックされます。
すべてのルールセットには、ルールセットのどのルールにも指定されていないトラフィックを許可または拒否するかどうかを指定するデフォルトルールが必要です。デフォルトルールのアクション(許可または拒否)は、ルールセット内の他のルールに指定されたアクションとは反対である必要があります。
トポロジー
設定
手順
CLIクイックコンフィグレーション
この例をすばやく設定するには、以下のコマンドをコピーしてテキスト ファイルに貼り付け、改行を削除し、ネットワーク設定に一致させる必要がある詳細情報を変更し、コマンドを [edit] 階層レベルでCLIにコピー アンド ペーストして、設定モードから commit を入力します。
set security application-firewall rule-sets ls-product-design-rs1 rule r1 match dynamic-application junos:telnet set security application-firewall rule-sets ls-product-design-rs1 rule r1 then permit set security application-firewall rule-sets ls-product-design-rs1 rule r2 match dynamic-application-group junos:web set security application-firewall rule-sets ls-product-design-rs1 rule r2 then permit set security application-firewall rule-sets ls-product-design-rs1 default-rule deny set security application-firewall rule-sets ls-product-design-rs2 rule r1 match dynamic-application junos:facebook set security application-firewall rule-sets ls-product-design-rs2 rule r1 then deny set security application-firewall rule-sets ls-product-design-rs2 default-rule permit
ステップバイステップの手順
次の例では、設定階層のさまざまなレベルに移動する必要があります。その方法の詳細については、『Junos OS CLIユーザーガイド』の「 構成モードでのCLIエディターの使用 」を参照してください。
ユーザー論理システム用のアプリケーションファイアウォールを設定するには:
ユーザー論理システム管理者としてユーザー論理システムにログインし、設定モードにします。
lsdesignadmin1@host:ls-product-design> configure lsdesignadmin1@host:ls-product-design#
この論理システム用にアプリケーションファイアウォールルールセットを設定します。
[edit] lsdesignadmin1@host:ls-product-design# set security application-firewall rule-sets ls-product-design-rs1
このルールセットのルールを設定し、ルールが一致させる動的アプリケーションと動的アプリケーショングループを指定します。
[edit] lsdesignadmin1@host:ls-product-design# set security application-firewall rule-sets ls-product-design-rs1 rule r1 match dynamic-application telnet then permit
このルールセットのデフォルトルールを設定し、識別された動的アプリケーションがルールセットのどのルールにも指定されていない場合に実行するアクションを指定します。
[edit] lsdesignadmin1@host:ls-product-design# set security application-firewall rule-sets ls-product-design-rs1 default-rule deny
必要に応じて、これらの手順を繰り返して、別のルールセットls-product-design-rs2を設定します。
結果
設定モードから、 show security application-firewall rule-set all コマンドを入力して設定を確認します。出力に意図した設定が表示されない場合は、この例の設定手順を繰り返して修正します。
簡潔にするために、この show コマンド出力には、この例に関連する設定のみ含まれています。システム上のその他の設定はすべて省略記号(...)で置き換えられています。
[edit]
lsdesignadmin1@host:ls-product-design# show security application-firewall rule-set all
...
application-firewall {
rule-sets ls-product-design-rs1 {
rule r1 {
match {
dynamic-application [junos:telnet];
}
then {
permit;
}
}
default-rule {
deny;
}
}
rule-sets ls-product-design-rs1 {
rule r2 {
match {
dynamic-application-group [junos:web];
}
then {
permit;
}
}
rule-sets ls-product-design-rs2 {
rule r1 {
match {
dynamic-application [junos:FACEBOOK];
}
then {
deny;
}
}
default-rule {
permit;
}
}
デバイスの設定が完了したら、設定モードから commit を入力します。
検証
設定が正常に機能していることを確認します。
アプリケーションファイアウォール設定の確認
目的
ユーザー論理システム上のアプリケーションファイアウォール設定を表示します。
アクション
動作モードから、 show security application-firewall rule-set all コマンドを入力します。
lsdesignadmin1@host:ls-product-design> show security application-firewall rule-set all
Rule-set: ls-product-design-rs1
Logical system: ls-product-design
Rule: r1
Dynamic Applications: junos:telnet
Action:permit
Number of sessions matched: 10
Default rule:deny
Number of sessions matched: 100
Number of sessions with appid pending: 2
Rule-set: ls-product-design-rs1
Logical system: ls-product-design
Rule: r2
Dynamic Applications: junos:web
Action:permit
Number of sessions matched: 20
Default rule:deny
Number of sessions matched: 200
Number of sessions with appid pending: 4
Rule-set: ls-product-design-rs2
Logical system: ls-product-design
Rule: r1
Dynamic Applications: junos:FACEBOOK
Action:deny
Number of sessions matched: 40
Default rule:permit
Number of sessions matched: 400
Number of sessions with appid pending: 10
例:ユーザー論理システム用のAppTrackの設定
この例では、ネットワークの帯域幅の使用状況を分析できるように AppTrack トラッキング ツールを設定する方法を示します。
要件
始める前に:
論理システム管理者としてユーザー論理システムにログインします。 ユーザー論理システム設定の概要を参照してください。
(プライマリ管理者)プライマリ論理システムでシステムロギングを設定します。 『ネットワーク管理と監視ガイド』を参照してください。
概要
この例では、例に示す ユーザー 論理システム、その管理者、そのユーザー、および相互接続論理システムの作成に示す ls-product-design-design ユーザー論理システムで、セキュリティゾーン ls-product-design-trust のアプリケーション追跡を有効にする方法を示しています。
最初のメッセージはセッション開始時に生成され、その後、またはセッションが終了するまで 5 分ごとに更新メッセージが送信されます。セッション終了時に最終メッセージが送信されます。
トポロジー
設定
手順
CLIクイックコンフィグレーション
この例をすばやく設定するには、以下のコマンドをコピーしてテキスト ファイルに貼り付け、改行を削除し、ネットワーク設定に一致させる必要がある詳細情報を変更し、コマンドを [edit] 階層レベルでCLIにコピー アンド ペーストして、設定モードから commit を入力します。
set security zones security-zone ls-product-design-trust application-tracking set security application-tracking first-update
ステップバイステップの手順
次の例では、設定階層のさまざまなレベルに移動する必要があります。その方法の詳細については、『Junos OS CLIユーザーガイド』の「 構成モードでのCLIエディターの使用 」を参照してください。
ユーザー論理システムにAppTrackを設定するには:
論理システム管理者としてユーザー論理システムにログインし、設定モードに入ります。
lsdesignadmin1@host:ls-product-design> configure lsdesignadmin1@host:ls-product-design#
セキュリティゾーンのAppTrackを有効にします。
[edit security] lsdesignadmin1@host:ls-product-design# set zones security-zone ls-product-design-trust application-tracking
セッション開始時と5分間隔で更新メッセージを生成します。
[edit security] lsdesignadmin1@host:ls-product-design# set application-tracking first-update
結果
設定モードから、 show security コマンドを入力して設定を確認します。出力に意図した設定が表示されない場合は、この例の設定手順を繰り返して修正します。
簡潔にするために、この show コマンド出力には、この例に関連する設定のみ含まれています。システム上のその他の設定はすべて省略記号(...)で置き換えられています。
[edit]
lsdesignadmin1@host:ls-product-design# show security
...
application-tracking {
first-update;
}
...
zones {
security-zone ls-product-design-trust {
...
application-tracking;
}
}
デバイスの設定が完了したら、設定モードから commit を入力します。
検証
設定が正常に機能していることを確認するには、以下のタスクを実行します。
AppTrack 動作の検証
目的
AppTrack カウンターを定期的に表示して、追跡を監視します。
アクション
動作モードから、 show application-tracking counters コマンドを入力します。
セキュリティフローセッション統計の検証
目的
ログに記録されたメッセージのバイト数とパケット数を、 show security flow session コマンド出力からのセッション統計と比較します。
アクション
動作モードから、 show security flow session コマンドを入力します。
アプリケーションシステムキャッシュ統計情報の検証
目的
show services application-identification application-system-cacheコマンド出力からのアプリケーションのIPアドレス、ポート、プロトコル、サービスなどのキャッシュ統計を比較します。
アクション
動作モードから、 show services application-identification application-system-cache コマンドを入力します。