ユーザーロールファイアウォールセキュリティポリシー
ユーザーロールのファイアウォールポリシーを使用すると、管理者は、割り当てられたロールに基づいてユーザーのネットワークアクセスを許可または制限できます。ユーザーロールファイアウォールは、脅威の軽減を強化し、より有益なフォレンジックリソースを提供し、規制コンプライアンスのための記録アーカイブを改善し、定期的なアクセスプロビジョニングを強化します。
ユーザーロールファイアウォールについて
IP情報のみに基づくネットワークセキュリティの施行、監視、報告では、今日のダイナミックでモバイルな働き手にとって十分ではなくなるでしょう。ユーザー ファイアウォール ポリシーを統合することで、管理者は、従業員、請負業者、パートナー、その他のユーザーのネットワーク アクセスを、割り当てられたロールに基づいて許可または制限できます。ユーザーロールファイアウォールは、脅威の軽減を強化し、より有益なフォレンジックリソースを提供し、規制コンプライアンスのための記録アーカイブを改善し、定期的なアクセスプロビジョニングを強化します。
ユーザー ロールのファイアウォールは、次の 2 つのアクションをトリガーします。
トラフィックに関連付けられたユーザーとロールの情報を取得する
ゾーンペアのコンテキスト内の6つの一致条件に基づいて、取るべきアクションを決定します
source-identity フィールドは、ユーザ ロール ファイアウォールを他のタイプのファイアウォールと区別します。ソース ID が特定のゾーン ペアのポリシーで指定されている場合、それはユーザー ロール ファイアウォールです。ポリシー検索が行われる前に、ユーザーとロールの情報を取得する必要があります。ソース ID がどのポリシーでも指定されていない場合、ユーザーとロールの検索は必要ありません。
ユーザーおよびロール情報を取得するために、認証テーブルでトラフィックに対応するIPアドレスを持つエントリーが検索されます。エントリが見つかった場合、そのユーザーは認証済みユーザーとして分類されます。見つからない場合、ユーザーは認証されていないユーザーとして分類されます。
認証されたユーザーに関連付けられているユーザー名とロールが、ポリシー照合のために取得されます。認証分類と、取得したユーザーおよびロール情報の両方が、source-identity フィールドの照合に使用されます。
トラフィックの特性は、ポリシー仕様と照合されます。ゾーン コンテキスト内では、ユーザーまたはロールと 5 つの標準一致条件に一致する最初のポリシーによって、トラフィックに適用されるアクションが決定されます。
次のセクションでは、ユーザーとロールの取得の相互作用とポリシー検索プロセス、ユーザーとロールの割り当てを取得する方法、ユーザーロールのファイアウォールポリシーを設定する手法、およびユーザーロールのファイアウォールポリシーを設定する例について説明します。
ユーザーロールの取得とポリシールックアッププロセス
ポリシー検索では、ファイアウォールポリシーはゾーンペア(fromゾーンとtoゾーン)でグループ化されます。ゾーンペアのコンテキスト内では、IPベースのファイアウォールポリシーが、送信元IP、送信元ポート、宛先IP、宛先ポート、プロトコルの5つの基準に基づいてトラフィックと照合されます。
ユーザーロールのファイアウォールポリシーには、6番目の一致条件であるソースID(Source Identity)が含まれます。source-identity フィールドは、ポリシーが適用されるユーザとロールを指定します。ゾーン ペア内のいずれかのポリシーで source-identity フィールドが指定されている場合、ポリシー ルックアップを続行する前に、ユーザーおよびロールの情報を取得する必要があります。(ゾーン ペアのすべてのポリシーが any に設定されている場合、または source-identity フィールドにエントリがない場合、ユーザとロールの情報は必要なく、5 つの標準一致基準がポリシー ルックアップに使用されます)。
ユーザー識別テーブル (UIT) は、既に認証されているアクティブ ユーザーのユーザーおよびロール情報を提供します。テーブルの各エントリは、認証済みユーザーとそのユーザーに関連付けられたロールにIPアドレスをマッピングします。
トラフィックがユーザーとロールのデータを必要とする場合、登録されている各UITで同じIPアドレスを持つエントリが検索されます。ユーザーが認証されていない場合、テーブルにそのIPアドレスのエントリーはありません。UITエントリが存在しない場合、ユーザーは認証されていないユーザーと見なされます。
ポリシー検索は、ユーザーとロールの情報が取得された後に再開されます。トラフィックの特性は、ポリシーの一致条件と照合されます。ポリシーの source-identity フィールドには、1 人以上のユーザまたはロールと、以下のキーワードを指定できます。
| authenticated-user | 認証済みのユーザー。 |
| unauthenticated-user | 認証されていないユーザー。 |
| any | 認証にかかわらないすべてのユーザー。ゾーン ペアのすべてのポリシーで source-identity フィールドが構成されていないか、または any に設定されている場合、一致するのは 5 つの条件のみです。 |
| unknown-user | 停電などの認証サーバーの切断により、ユーザーを認証できない。 |
例えば、mgmt ロールに割り当てられているユーザー c について考えてみます。trustゾーンからuntrustゾーンへのトラフィックがIPアドレス198.51.100.3のuser-cから受信されると、ポリシー検索が開始されます。 表 1 は、信頼ゾーンと信頼解除ゾーンのペアに対するユーザー ロール ファイアウォールの 3 つのポリシーを表しています。
|
|
|
|
|
|
|
|
|
|---|---|---|---|---|---|---|---|---|
P1の |
信託 |
信頼できない |
192.0.2.0 |
203.0.113.0 |
任意 |
HTTP |
打ち消す |
– |
P2の |
信託 |
信頼できない |
任意 |
任意 |
管理 |
任意 |
許す |
– |
P3の |
信託 |
信頼できない |
198.51.100.3 |
任意 |
使用人 |
HTTP |
打ち消す |
– |
ゾーンペアのすべてのポリシーで、最初にsource-identityオプションがチェックされます。いずれかのポリシーでユーザー、ロール、またはキーワードが指定されている場合、ポリシーのルックアップを続行する前に、ユーザーとロールの取得が行われる必要があります。 表 1 は、ポリシー P2 が送信元 ID として mgmt を指定し、これをユーザー ロール ファイアウォールにしていることを示しています。ポリシーのルックアップを続行する前に、ユーザーとロールを取得する必要があります。
キーワード any または がゾーン コンテキストのすべてのポリシーでソース ID が指定されていない場合、ユーザーとロールの取得は実行されません。この場合、残りの 5 つの値のみがポリシー基準に一致します。
表 2 に示されている UIT の IP アドレスが検査されます。アドレスが見つかったため、ユーザ名 user-c、ユーザ c にリストされているすべてのロール(この場合は mgmt と employee)、およびキーワード authenticated-user が、ポリシーの source-identity フィールドへのトラフィックの照合に使用されるデータになります。
元 IP アドレス |
ユーザー名 |
役割 |
|---|---|---|
192.0.2.4 |
ユーザー-A |
使用人 |
198.51.100.3 |
ユーザー-C |
管理、従業員 |
203.0.113.2 |
ユーザーS |
請負人 |
ポリシー ルックアップが再開され、 表 1 の各ポリシーの一致条件が受信トラフィックと比較されます。他のすべての基準が一致すると仮定すると、user-c、mgmt、employee、authenticated-user、または source-identity フィールドで anyを指定する最初のポリシーが、このトラフィックに一致する可能性があります。ポリシー P1 は、ユーザー C の取得したロールの 1 つと一致しますが、送信元 IP アドレスは一致しません。したがって、ポリシー検索は続行されます。ポリシー P2 では、すべての基準がトラフィックに一致します。したがって、ポリシーアクションに従い、トラフィックが許可されます。トラフィックはポリシーP3にも一致しますが、ユーザー ファイアウォール ポリシーは終末的なものであり、ポリシーのルックアップは最初のポリシー一致が見つかった時点で終了します。ポリシーP2はすべての基準に一致するため、ポリシー検索は終了し、ポリシーP3はチェックされません。
また、ポリシーは、ユーザーおよびロールの取得結果からユーザーに割り当てられた分類に基づいて作成することもできます。 表 3 に示す同じゾーン ペアの異なるポリシー セットについて考えてみます。IP 198.51.100.5 で user-q からトラフィックを受信した場合、ポリシーの少なくとも 1 つで source-identity フィールドが指定されているため、ユーザーとロールを取得する必要があります。
|
|
|
|
|
|
|
|
|
|---|---|---|---|---|---|---|---|---|
P1の |
信託 |
信頼できない |
任意 |
任意 |
認証されていないユーザー |
HTTP |
打ち消す |
– |
P2の |
信託 |
信頼できない |
任意 |
任意 |
管理 |
任意 |
許す |
– |
P3の |
信託 |
信頼できない |
198.51.100.3 |
任意 |
使用人 |
HTTP |
打ち消す |
– |
表 2 の UIT 項目を検査しても、IP アドレス 198.51.100.5 の項目は見つかりません。したがって、ユーザーは認証されていないユーザーと見なされます。ポリシー ルックアップが再開されると、トラフィックはポリシー P1 と一致し、トラフィックは拒否されます。
ユーザー識別テーブルについて
SRXシリーズファイアウォールでは、ユーザー識別テーブル(UIT)に、認証された各ユーザーのIPアドレス、ユーザー名、ロール情報が含まれています。エントリーはIPアドレス順に並んでいます。セキュリティ ポリシーでユーザー名とロールの情報が必要な場合は、すべての UI がチェックされます。UIT の 1 つのエントリで IP アドレスが見つかった場合、そのアドレスのユーザーは既に正常に認証されています。
各認証ソースは、独自の UIT を個別に維持し、データにアクセスするためのクエリ機能を提供します。ローカル認証テーブル、統合アクセス制御(UAC)認証テーブル、ファイアウォール認証テーブルの 3 種類の UIT がサポートされています。
| Local authentication table | CLIコマンドを使用して、手動またはプログラムでSRXシリーズファイアウォール上に作成された静的UIT。ローカル認証テーブルに含まれるすべてのユーザーは、認証されたユーザーと見なされます。一致する IP アドレスが見つかると、ユーザーとロールの情報がテーブル エントリから取得され、トラフィックに関連付けられます。ユーザーとロールの情報は、手動でデバイス上に作成することも、サードパーティの認証サーバーから移植することもできますが、ローカル認証テーブル内のデータはリアルタイムで更新されません。 |
| UAC authentication table | Junos PulseアクセスコントロールサービスからSRXシリーズファイアウォールにプッシュされる動的UIT。Junos PulseアクセスコントロールサービスのUAC認証テーブルには、認証された各ユーザーのエントリーが含まれています。認証テーブルが更新されるたびに、このテーブルのデータは更新され、SRXシリーズファイアウォールにプッシュされます。デバイスの設定に応じて、認証は Junos Pulseアクセスコントロールサービス自体またはサードパーティの認証サーバーで行われます。Access Control Serviceがサードパーティサーバーからのデータを中継している場合、データはAccess Control Serviceによって認証テーブルのファイル形式と一致するように再構築され、SRXシリーズファイアウォールにプッシュされます。 |
| Firewall authentication table | セキュリティ ポリシーでファイアウォール 認証タイプとして指定されている場合
|
ローカル認証テーブル
ローカル認証テーブルは、エントリーを挿入または削除するCLIコマンドで管理されます。ローカル認証テーブルは、動的 UIT が使用できない場合のバックアップ ソリューションとして使用したり、プリンターやファイル サーバーなど、ネットワークに対して認証できないデバイスにユーザーおよびロール情報を割り当てたりできます。ローカル認証テーブルは、テストに使用したり、ファイアウォール認証やアクセス制御サービスが設定されていない場合に、ユーザーロールファイアウォールがどのように機能するかを示すために使用できます。
サードパーティの認証ソースからIPアドレス、ユーザー名、ロールをダウンロードし、CLIコマンドを使用してプログラムでローカル認証テーブルに追加できます。認証ソースでユーザーとグループが定義されている場合、グループをロールとして構成し、通常どおりユーザーに関連付けることができます。
UAC 認証テーブルに準拠するために、ユーザー名は 65 文字に制限され、ロール名は 64 文字に制限されます。ローカル認証テーブルには、インストールされたJunos OSリリースに応じて、SRX1500デバイス以上で最大10,240認証エントリー、SRX650デバイス以下で最大5120認証エントリーが含まれます。ローカル認証テーブルには、vSRX仮想ファイアウォール上の5120の認証エントリーがあります。各認証エントリは、最大 200 個のロールに関連付けることができます。最大容量は、各ユーザーに割り当てられた平均 10 個のロールに基づきます。これは、UAC 認証テーブルに指定されている容量と同じです。
次のコマンドを使用して、ローカル認証テーブルにエントリを追加します。各エントリはIPアドレスでキーが設定されることに注意してください。
user@host> request security user-identification local-authentication-table add user user-name ip-address ip-address role [role-name role-name ]
1 つの CLI コマンドの role オプションは、最大 40 個のロールを受け入れます。1 人のユーザーに 40 を超えるロールを関連付けるには、複数のコマンドを入力する必要があります。認証、ユーザー、およびロールのエントリを追加または変更する場合は、次の特性に注意してください。
ロール名をユーザー名と同じにすることはできません。
既存の IP アドレスとユーザー名で
addオプションを使用すると、ロール エントリが集約されます。テーブルは、ユーザーごとに最大 200 個のロールをサポートできます。既存の IP アドレスと新しいユーザー名で
addオプションを使用すると、その IP アドレスの既存のユーザー名が上書きされます。ロールの集約は、既存のセッションには影響しません。
既存のエントリのロールリストを変更するには、既存のエントリを削除し、新しいロールリストを持つエントリを追加する必要があります。
既存のエントリのIPアドレスを変更するには、既存のエントリを削除し、新しいIPアドレスを持つエントリを追加する必要があります。
エントリは、IPアドレスまたはユーザー名で削除できます。
user@host> request security user-identification local-authentication-table delete (ip-address | user-name)
ローカル認証テーブルは、次のコマンドでクリアできます。
user@host> clear security user-identification local-authentication-table
ローカル認証 テーブルの内容を表示するには、次の show... コマンドを使用します。
user@host> show security user-identification local-authentication-table all (brief | extensive)
briefオプション(デフォルト)は、IP アドレスの順に並べられた表形式で情報を表示します。ユーザー名とロールのリストは、形式に合わせて切り捨てられます。
user@host> show security user-identification local-authentication-table all
Total entries: 2 Source IP Username Roles 198.51.100.1 user1 role1 203.0.113.2 user2 role2, role3
extensive オプションを選択すると、各フィールドの完全な内容が表示されます。その他のオプションでは、表示が 1 つのユーザー名、IP アドレス、またはロールに制限されます。
user@host> show security user-identification local-authentication-table all extensive
Total entries: 3 Ip-address: 198.51.100.2 Username: user1 Roles: role1 Ip-address: 203.0.113.2 Username: user1 Roles: role2 Ip-address: 192.0.2.3 Username: user3 Roles: role1, role2
UAC 認証テーブル
SRXシリーズファイアウォールは、Junos Pulseアクセスコントロールサービスのエンフォーサーとして機能します。この実装では、SRXシリーズファイアウォールがレイヤー3の強化ポイントとして機能し、アクセス制御サービスからプッシュダウンされたIPベースのリソースポリシーでリソースへのアクセスを制御します。
ユーザーロールファイアウォールとして実装された場合、SRXシリーズファイアウォールは、ユーザーロール取得のために同様の方法でUACネットワークにアクセスできます。この場合、認証されたすべてのユーザーのユーザーおよびロール情報が Access Control Service からプッシュされます。
SRXシリーズファイアウォールの設定は、エンフォーサーの設定と似ています。通信を確立するには、両方のデバイスが他方を認識するための構成とパスワード設定が必要です。SRXシリーズファイアウォールから、インフラストラクチャコントローラとしてAccess Control Serviceを接続します。
[edit] user@host# set services unified-access-control infranet-controller ic-name address ip-address user@host# set services unified-access-control infranet-controller ic-name interface interface-name user@host# set services unified-access-control infranet-controller ic-name password password
アクセス制御サービスから、SRXシリーズファイアウォールを新しいエンフォーサーとして定義します。SRXシリーズファイアウォールで指定されているものと同じパスワードを使用します。
ユーザーとパスワードは、標準の認証構成と同様に、アクセス制御サービスで定義されます。1 つ以上のロールをユーザーに関連付けることもできます。ユーザーが認証されると、IP アドレス、ユーザー名、および関連するロールを含むエントリが、アクセス制御サービスの UAC 認証テーブルに追加されます。
2つのデバイス間の接続が初期化されると、UAC認証テーブルがアクセス制御サービスからSRXシリーズファイアウォールにプッシュされます。アクセス制御サービスでエントリが追加、削除、または更新されるたびに、更新されたUAC認証テーブルがSRXシリーズファイアウォールにプッシュされます。
リソース・アクセス・ポリシーは、ユーザー・ロール・ファイアウォール実装のアクセス制御サービスには必要ありません。アクセス動作は、SRXシリーズファイアウォールのデバイスからも削除されます。リソースアクセスポリシーがアクセス制御サービスで定義されている場合、それらはSRXシリーズファイアウォールにプッシュされますが、特定のファイアウォールポリシーがポリシーのアクションフィールドにUACポリシーを実装しない限り、使用されません。
次の show services コマンドは、SRXシリーズ ファイアウォール上の UAC 認証テーブルの内容を表示し、テーブルがアクセス制御サービスから正常にプッシュされたことを確認します。
user@host> show services unified-access-control authentication-table extended
Id Source IP Username Age Role name 3 192.0.2.1 april 60 Users 6 192.0.2.2 june 60 Employeees Total: 2
SRXシリーズファイアウォールは接続を監視し、アクセス制御サービスへの通信が失われているかどうかを検出します。UAC設定に基づいて、SRXシリーズファイアウォールは、別のリクエストを発行する前に、設定された間隔で応答を待機します。応答を受信した場合、アクセス制御サービスは機能していると見なされます。指定したタイムアウト時間が経過しても応答が受信されない場合、通信は失われたと見なされ、タイムアウト アクションが適用されます。次の UAC コマンド構文は、間隔、タイムアウト、およびタイムアウト アクションを構成します。
user@host# set services unified-access-control interval seconds user@host# set services unified-access-control timeout seconds user@host# set services unified-access-control timeout-action (close | no-change | open)
切断中に、切断されたデバイスに対してユーザーとロールの検索が試行されると、タイムアウト アクションに関係なく失敗コードが返されます。すべての認証ソースへのアクセスが失われた場合、キーワード unknown-user が IP アドレスに関連付けられます。ポリシー ルックアップが再開されると、送信元 ID として unknown-user を持つポリシーがトラフィックと一致します。unknown-userに対して特定のポリシーを実装することで、認証ソースの損失を処理するメソッドを作成できます。
ファイアウォール認証テーブル
ファイアウォール認証では、ゾーンとデバイス間のアクセスを許可する前に、ユーザーがSRXシリーズファイアウォールに対して認証を受ける必要があります。トラフィックを受信すると、ユーザーはユーザー名とパスワードの入力を求められ、指定された有効なユーザーのプロファイルと照合されます。デバイスの設定に応じて、ファイアウォール認証は、telnet、HTTP、HTTPS(SRX5800、SRX5600、および SRX5400 デバイス向け)、および FTP トラフィックがローカルで認証されているか、または RADIUS、LDAP、または SecureID 認証サーバーによって認証されていることを確認します。
ファイアウォール認証がデバイスで使用されている場合、認証プロセスでは、ユーザーロールのファイアウォール一致条件に必要なユーザー名とロール情報を提供することもできます。この場合、情報はファイアウォール認証テーブルと呼ばれるUITで収集および維持されます。 edit access 階層の 1 つ以上のアクセス ポリシーが、ファイアウォール認証に使用する認証方法を定義します。
ファイアウォール認証テーブルは、ユーザーロール情報を取得するための認証ソースとして有効にする必要があります。 priority オプションは、すべての UI がチェックされる順序を指定します。
user@host# set security user-identification authentication-source firewall-authentication priority priority
特定のゾーンペアに対するファイアウォールポリシーでは、permitアクションに指定されたfirewall-authenticationサービスが、一致するトラフィックの認証を開始します。user-firewall認証タイプは、認証されたユーザーのUITエントリを生成します。access-profile オプションに指定された名前は、有効なユーザーの認証に使用されるプロファイルを識別します。
[edit security policies from-zone zone to-zone zone policy policy-name] user@host# set match source-identity unauthenticated-user user@host# set then permit firewall-authentication user-firewall access-profile profile-name
UIT テーブル エントリには、認証されたユーザーとユーザーの関連グループにマッピングされたトラフィックの IP アドレスが含まれています。ユーザーがアクティブでなくなると、エントリはテーブルから削除されます。トラフィックや認証されたユーザーが変更されると、エントリーが継続的に追加および削除されるため、ファイアウォール認証テーブルは動的と見なされます。
同じゾーン ペア内のポリシーで一致条件の一部として source-identity フィールドが指定されている場合、有効なすべての UI でトラフィックの IP アドレスに対応するエントリが検索されます。見つかった場合、関連するユーザー名とグループが取得され、送信元と ID の照合が行われます。(ユーザー認証グループ名は、送信元と ID の照合ではロール名と見なされます)。
ユーザーとロールを使用したポリシーのプロビジョニング
SRXシリーズファイアウォールまたはアクセスコントロールサービスで定義されているすべてのユーザーとロールは、SRXシリーズファイアウォール上のユーザーロールファイルで管理されます。プロビジョニングに使用できるすべてのユーザーとロールを表示するには、次の show security... コマンドを使用します。
ファイアウォール認証テーブルのユーザー名とロールは、以下の表示に含まれません。
プロビジョニングに使用できるすべてのロールを表示するには、
show security user-identification role-provision allコマンドを使用します。すべてのUITのロールが一緒にリストされていることに注意してください。プロビジョニング可能なすべてのユーザーを表示するには、
show security user-identification user-provision allコマンドを使用します。プロビジョニング可能なすべてのユーザーとロールを表示するには、
show security user-identification source-identity-provision allコマンドを使用します。
ポリシー構成がコミットされると、ユーザー ロール ファイルがチェックされ、ポリシーで指定されたすべてのユーザーとロールがプロビジョニングに使用できるかどうかが判断されます。ユーザーまたはロールが見つからない場合は、後で定義できるように、不足しているユーザーまたはロールを示す警告が表示されます。
ポリシーは、ユーザーまたはロールがまだ定義されていない場合でもコミットされます。
ファイアウォール認証によるユーザー名とロール情報の取得
ユーザーロールのファイアウォールポリシーは、ユーザーの認証とユーザー名およびロール情報の取得の両方のために、ファイアウォール認証と統合できます。この情報はトラフィックの IP アドレスにマッピングされ、ファイアウォール認証テーブルに保存され、ユーザー ロールのファイアウォール ポリシーの適用に使用されます。
以下の CLI ステートメントは、ユーザー ロールのファイアウォール適用のためのファイアウォール認証を設定します。
キャプティブ ポータル リダイレクション用のユーザ ロール ファイアウォールの設定
認証されていないユーザーをアクセス制御サービスに自動的にリダイレクトするには、UAC キャプティブポータル機能を使用します。以下の構文は、キャプティブポータルのプロファイルを定義します。
set services unified-access-control captive-portal profile-name redirect-traffic [unauthenticated | all] set services unified-access-control captive-portal profile-name redirect-url host-url
認証の暗号化に使用される Kerberos プロトコルは、サービス プリンシパル名 (SPN) によってのみアクセス制御サービスを識別します。プロトコルはIPアドレスを受け入れません。したがって、リダイレクト URL の形式は である必要があります
service://hostname/options
この実装では、サービスは HTTP で、ホスト名はアクセス制御サービスの FQDN です。ホスト名の後に指定されたオプションは、アクセスコントロールサービスに追加情報を渡し、ユーザーを元の宛先、SRXシリーズファイアウォール、またはリダイレクトを開始したポリシーに誘導します。以下のキーワードと変数のペアを使用して、オプションを設定できます。
| ?target=%dest-url% | ユーザーがアクセスしようとしている保護されたリソースを指定します。 |
| &enforcer=%enforcer-id% | SRXシリーズファイアウォールがアクセス制御サービスによってエンフォーサーとして設定されたときに、そのファイアウォールに割り当てられるIDを指定します。 |
| &policy=%policy-id% | トラフィックをリダイレクトしたセキュリティポリシーの暗号化ポリシーIDを指定します。 |
以下のステートメントは、auth-redirectという名前のキャプティブポータルのプロファイルを定義します。キャプティブポータルは、認証されていないユーザーを認証のためにアクセスコントロールサービスのURLにリダイレクトします。認証に成功すると、トラフィックはSRXシリーズファイアウォールに返送されます。
[edit] user@host# set services unified-access-control captive-portal auth-redirect redirect-traffic unauthenticated user@host# set services unified-access-control captive-portal auth-redirect redirect-url "http://ic6000.example.com/?target=%dest-url%&enforcer=%enforcer-id%&policy=%policy-id%"
定義されたキャプティブポータルプロファイルは、UAC設定の一部として表示されます。
[edit] user@host#show services
unified-access-control {
captive-portal auth-redirect {
redirect-traffic unauthenticated;
redirect-url "http://ic6000.example.com/?target=%dest-url%&enforcer=%enforcer-id%&policy=%policy-id%";
}
}
プロファイルが定義されると、ポリシーは、特定の基準が一致した場合に、アプリケーションサービスとしてキャプティブポータルを適用できます。ユーザーロールが認証されていない場合、認証リダイレクトキャプティブポータルはトラフィックをtrustゾーンからuntrustゾーンへと迂回させます。次の例では、ポリシーP1を定義して、認証リダイレクトキャプティブポータルプロファイルをtrustからuntrustへのHTTPトラフィックに適用します。
[edit] user@host# set security policies from-zone trust to-zone untrust policy P1 match application http user@host# set security policies from-zone trust to-zone untrust policy P1 match source-identity unauthenticated-user user@host# set security policies from-zone trust to-zone untrust policy P1 then permit application-services uac-policy captive-portal auth-redirect
例:SRXシリーズデバイスでのユーザーロールファイアウォールの設定
次の例では、SRXシリーズファイアウォールでユーザーロールファイアウォールを設定します。ファイアウォールは、アクティブな認証済みユーザーまたは関連するロールに基づいて、trustゾーンからuntrustゾーンへのアクセスを制御します。ユーザーロールのファイアウォールポリシーは、次の制限を確立します。
認証されたユーザーのみが、trustゾーンからuntrustゾーンに許可されます。
認証されていないユーザーは、認証のためにアクセス制御サービスにリダイレクトされます。
ゾーン コンテキスト内の IP 192.0.2.0 から IP 203.0.113.0 へのトラフィックは制限されます。dev-abc、http-juniper-accessible、または ftp-accessible のロールを持つユーザーからのトラフィックのみが許可されます。許可されたトラフィックは、AppFWルールによってさらに評価されます。
junos:FACEBOOK-ACCESS、junos:GOOGLE-TALK、または junos:MEEBOアプリケーショントラフィックとして識別される許可されたトラフィックは拒否されます。
他のアプリケーションで許可されたトラフィックは許可されます。
trustゾーンからuntrustゾーンへの他のすべてのトラフィックは許可されます。
必要条件
開始する前に、Junos OS リリース 12.1 以降を搭載した SRXシリーズファイアウォールが設定され、初期化されていることを確認してください。
この例では、トラフィックの IP アドレスに関連付けられたユーザーとロールの情報が、アクセス制御サービスによって提供されます。アクセス コントロール サーバの設定手順については、 アイデンティティ ソースとしての Active Directory の設定を参照してください。
概要
表 4 は、この例の要件を満たすファイアウォールの概要を示しています。ユーザー ロール ファイアウォールは、4 つのポリシーで構成されます。
|
|
|
|
|
|
|
|
|
|---|---|---|---|---|---|---|---|---|
ユーザーロール-FW1 |
信託 |
信頼できない |
任意 |
任意 |
認証されていないユーザー |
HTTP |
許す |
UAC キャプティブポータル |
ユーザーロール-fw2 |
信託 |
信頼できない |
192.0.2.0 |
203.0.113.0 |
dev-abc http-juniper-accessible ftp-accessible |
HTTP |
許す |
AppFWルールセットRS1 |
ユーザーロール-fw3 |
信託 |
信頼できない |
192.0.2.0 |
203.0.113.0 |
任意 |
HTTP |
打ち消す |
|
ユーザーロール-fw4 |
信託 |
信頼できない |
任意 |
任意 |
任意 |
HTTP |
許す |
|
このファイアウォールのポリシーの少なくとも 1 つに source-identity フィールドが指定されているため、ポリシー検索を実行する前に、ユーザーとロールの情報を取得する必要があります。トラフィックの送信元 IP は、UIT の項目と比較されます。送信元 IP アドレスが見つかった場合、キーワード authenticated、ユーザー名、およびこのユーザーに関連付けられているロールは、後のポリシー検索で使用するために保存されます。IP アドレスに一致するエントリが UIT で見つからない場合は、ポリシー ルックアップのためにキーワード unauthenticated-user が保存されます。
ユーザー名、ロール、およびキーワードを取得した後、ポリシーのルックアップが開始されます。受信トラフィックの特性が、各ポリシーの一致条件と比較されます。一致が見つかった場合は、そのポリシーで指定されたアクションが実行されます。
ポリシー一致は最終イベントであり、一致後のポリシーはチェックされません。ポリシーシーケンスは、一致するトラフィックに対して実行するアクションに影響します。この例では、ポリシーは次の順序で適用されます。
| user-role-fw1 | UAC キャプティブポータル サービスを、unauthenticated-user キーワードを使用して一致する HTTP トラフィックに適用し、認証のためにアクセス制御サービスにリダイレクトします。UAC プロファイルは、キャプティブポータルの仕様を識別するようにも構成する必要があります。 |
| user-role-fw2 | アドレス 192.0.2.0 からアドレス 203.0.113.0 までの、ユーザー名またはロールが一致する HTTP トラフィックに AppFW ルール セットを適用します。また、ルールセットを定義するために、アプリケーションファイアウォールも設定する必要があります。 |
| user-role-fw3 | このゾーン ペアのアドレス 192.0.2.0 からアドレス 203.0.113.0 までの残りの HTTP トラフィックをすべて拒否します。 |
| user-role-fw4 | このゾーン ペアの残りのすべての HTTP トラフィックを許可します。 |
構成
次の例では、設定階層のいくつかのレベルに移動する必要があります。その方法の詳細については、CLIユーザー ガイドの 設定モードにおけるCLIエディターの使用 を参照してください。
認証されていないユーザーのリダイレクトの構成
手順
IP アドレスが UIT にリストされていない場合、ポリシー ルックアップで unauthenticated-user キーワードが使用されます。ポリシーでは、このトラフィックへのアクセスを拒否する代わりに、認証のためにトラフィックを UAC キャプティブポータルにリダイレクトできます。
UAC 認証が認証されたユーザー向けのポリシーによってシャドウ化されないように、認証されていないユーザーのリダイレクト ポリシーを "任意の" ユーザーのポリシーの前に配置することが重要です。
SRXシリーズファイアウォールからアクセス制御サービスへのリダイレクトを設定するには:
設定モードから、キャプティブポータルacs-deviceのUACプロファイルを設定します。
[edit] user@host# set services unified-access-control captive-portal acs-device redirect-traffic unauthenticated-user
アクセス制御サービスのリダイレクトURLまたはキャプティブポータルのデフォルトURLを設定します。
[edit] user@host# set services unified-access-control captive-portal acs-device redirect-url “https://%ic-url%/?target=%dest-url%&enforcer=%enforcer-id%”
このポリシーは、認証後にユーザーを戻すためにアクセス制御サービスが使用するデフォルトのターゲット変数とエンフォーサー変数を指定します。これにより、システム仕様を変更しても設定結果に影響しません。
手記:?target=などの変数をコマンド ラインに含める場合は、URL と変数を引用符で囲む必要があります。送信元 ID が unauthenticated-user の場合、ゾーンの信頼からゾーンの信頼解除に HTTP トラフィックをリダイレクトするユーザー ロール ファイアウォール ポリシーを構成します。キャプティブポータルプロファイル名は、このポリシーに一致するトラフィックに対して取るべきアクションとして指定されます。
[edit] user@host# set security policies from-zone trust to-zone untrust policy user-role-fw1 match source-address any user@host# set security policies from-zone trust to-zone untrust policy user-role-fw1 match destination-address any user@host# set security policies from-zone trust to-zone untrust policy user-role-fw1 match application http user@host# set security policies from-zone trust to-zone untrust policy user-role-fw1 match source-identity unauthenticated-user user@host# set security policies from-zone trust to-zone untrust policy user-role-fw1 then permit application-services uac-policy captive-portal acs-device
ポリシーの設定が完了したら、変更をコミットします。
[edit] user@host# commit
業績
設定モードから、 show services コマンドと show security policies コマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。
[edit]user@host#show services unified-access-control { captive-portal acs-device { redirect-traffic unauthenticated; redirect-url “https://%ic-ip%/?target=%dest-url%&enforcer=%enforcer-id%”
user@host# show security policies
from-zone trust to-zone untrust {
policy user-role-fw1 {
match {
source-address any;
destination-address any;
application http;
source-identity unauthenticated-user
}
then {
permit {
application-services {
uac-policy {
captive-portal acs-device;
}
}
}
}
}
}
アプリケーションファイアウォールを使用したユーザーロールポリシーの作成
手順
このポリシーは、IP192.0.2.0 から IP 203.0.113.0 へのトラフィックを、そのユーザーとロール、およびアプリケーションに基づいて制限します。この構成では、アプリケーション ルール セットを定義し、一致するユーザー ロール トラフィックに適用します。
AppFWルールセットrs1を構成します。以下のルールセットは、junos:FACEBOOK-ACCESS、junos:GOOGLE-TALK、junos:MEEBOアプリケーションのトラフィックを拒否します。残りのトラフィックには、デフォルト設定の許可が適用されます。
[edit security application-firewall rule-sets rs1] user@host# set rule r1 match dynamic-application [junos:FACEBOOK-ACCESS junos:GOOGLE-TALK junos:MEEBO] user@host# set rule r1 then deny user@host# set default-rule permit
dev-abc、http-mgmt-accessible、または ftp-accessible のユーザー ロールを持つ IP 192.0.2.0 から IP 203.0.113.0 へのトラフィックに設定された rs1 アプリケーション ルールオプションは、ファイアウォールルール セットを適用するポリシーを設定します。
[edit] user@host# set security policies from-zone trust to-zone untrust policy user-role-fw2 match source-address 192.0.2.0 user@host# set security policies from-zone trust to-zone untrust policy user-role-fw2 match destination-address 203.0.113.0 user@host# set security policies from-zone trust to-zone untrust policy user-role-fw2 match application http user@host# set security policies from-zone trust to-zone untrust policy user-role-fw2 match source-identity [dev-abc http-mgmt-accessible ftp-accessible] user@host# set security policies from-zone trust to-zone untrust policy user-role-fw2 then permit application-services application-firewall rule-set rs1
ポリシーの設定が完了したら、変更をコミットします。
[edit] user@host# commit
業績
AppFWルールセットが正しく構成されていることを確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。
[edit]user@host#show security application-firewall rule-sets rs1 { rule r1 { match { dynamic-application [junos:FACEBOOK-ACCESS junos:GOOGLE-TALK junos:MEEBO] } then { deny; } } default-rule { permit; } }
ユーザーとロールに基づいた残りのセキュリティポリシーの作成
手順
以下の手順では、残りのトラフィックのポリシーを設定します。
送信元アドレスと宛先アドレスが同じで、ユーザーとロールの基準が user-role-fw2 ポリシーで指定されているものとは異なるトラフィックを拒否するポリシーを設定します。
[edit] user@host# set security policies from-zone trust to-zone untrust policy user-role-fw3 match source-address 192.0.2.0 user@host# set security policies from-zone trust to-zone untrust policy user-role-fw3 match destination-address 203.0.113.0 user@host# set security policies from-zone trust to-zone untrust policy user-role-fw3 match application http user@host# set security policies from-zone trust to-zone untrust policy user-role-fw3 match source-identity any user@host# set security policies from-zone trust to-zone untrust policy user-role-fw3 then deny
ゾーンの信頼からゾーンの信頼されていない状態まで、他のすべての HTTP トラフィックを許可するセキュリティ ポリシーを構成します。
[edit] user@host# set security policies from-zone trust to-zone untrust policy user-role-fw4 match source-address any user@host# set security policies from-zone trust to-zone untrust policy user-role-fw4 match destination-address any user@host# set security policies from-zone trust to-zone untrust policy user-role-fw4 match application http user@host# set security policies from-zone trust to-zone untrust policy user-role-fw4 match source-identity any user@host# set security policies from-zone trust to-zone untrust policy user-role-fw4 then permit
業績
ユーザーロールのファイアウォールポリシーの内容と順序を確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。
[edit]user@host#show security policies ... from-zone trust to-zone untrust { policy user-role-fw1 { match { source-address any; destination-address any; application http; source-identity unauthenticated-user } then { permit { application-services { uac-policy { captive-portal acs-device; } } } } } } from-zone trust to-zone untrust { policy user-role-fw2 { match { source-address 192.0.2.0; destination-address 203.0.113.0; application http; source-identity [dev-abc http-juniper-accessible ftp-accessible] } then { permit { application-services { application-firewall { rule-set rs1 } } } } } } from-zone trust to-zone untrust { policy user-role-fw3 { match { source-address 192.0.2.0; destination-address 203.0.113.0; application http; source-identity any } then { deny } } } from-zone trust to-zone untrust { policy user-role-fw4 { match { source-address any; destination-address any; application http; source-identity any } then { permit } } }
UAC を使用したリソース ポリシーの構成
ユーザーロールのファイアウォール機能を使用する場合、アクセス制御サービスにリソースポリシーは必要ありません。ただし、リソースポリシーが存在する場合、接続時にSRXシリーズファイアウォールにプッシュされます。ポリシー構成で UAC アプリケーション サービスを適用することで、これらのリソース ポリシーを使用するポリシーを作成できます。 表 5 は、UAC リソース ポリシーのみを使用する 3 つのファイアウォールポリシーを示しています。
|
|
|
|
|
|
|
|
|
|---|---|---|---|---|---|---|---|---|
P1の |
ゾーン1 |
ゾーン2 |
任意 |
192.0.2.1 |
任意 |
HTTP |
許す |
コンテンツセキュリティ |
P2の |
ゾーン1 |
ゾーン2 |
任意 |
ネット2 |
任意 |
HTTP |
許す |
IDP |
P3の |
ゾーン1 |
ゾーン2 |
任意 |
任意 |
任意 |
任意 |
許す |
UACの |
ゾーン 1 からゾーン 2 へのトラフィックのポリシーでは、すべてのポリシーの source-identity フィールドに any が指定されているため、ユーザーおよびロールの取得は開始されません。この例では、IP アドレス 192.0.2.1 へのトラフィックは許可されていますが、指定されたアプリケーション サービス(この場合は Content Security)の処理要件を満たす必要があります。net2 へのトラフィックは、IDP 処理要件によって許可および処理されます。残りのトラフィックは、UAC 処理要件によって許可され、処理されます。
このファイアウォールポリシーの構成は、次のようになります。
[edit]user@host#show security policies from-zone zone1 to-zone zone2 { policy P1 { match { source-address any; destination-address 192.0.2.1; source-identity any; application http; } then { permit { application-services { idp; } } } } } from-zone zone1 to-zone zone2 { policy P2 { match { source-address any; destination-address net2; source-identity any; application http; } then { permit { application-services { utm; } } } } } from-zone zone1 to-zone zone2 { policy P3 { match { source-address any; destination-address any; source-identity any; application any; } then { permit { application-services { uac-policy; } } } } }
このサンプル設定では、P1 と P2 のアクション フィールドは、IDP とコンテンツ セキュリティにそれぞれ設定された要件を適用します。uac-policyオプションを指定することで、SRXシリーズファイアウォールにプッシュされるリソースポリシーによって、宛先にアクセスできるかどうかが判断されます。
ユーザーロールファイアウォールは、ユーザーロールポリシーと、アクセス制御サービスからプッシュされたリソースポリシーの両方を実装できます。 表 6 は、3 つのゾーン ペアのポリシーを示しています。
|
|
|
|
|
|
|
|
|
|---|---|---|---|---|---|---|---|---|
P1の |
ゾーン1 |
ゾーン2 |
任意 |
任意 |
認証されていないユーザー |
任意 |
許す |
UAC キャプティブポータル |
P2の |
ゾーン1 |
ゾーン2 |
任意 |
192.0.2.1 |
役割2 |
HTTP |
許す |
IDP |
P3の |
ゾーン1 |
ゾーン2 |
任意 |
ネット2 |
認証されたユーザー |
HTTP |
許す |
コンテンツセキュリティ |
P4 |
ゾーン1 |
ゾーン2 |
任意 |
任意 |
任意 |
任意 |
許す |
|
P5 |
ゾーン1 |
ゾーン3 |
任意 |
任意 |
任意 |
任意 |
許す |
UACの |
P6 |
ゾーン2 |
ゾーン3 |
任意 |
任意 |
任意 |
任意 |
許す |
UACの |
ゾーン 1 からゾーン 2 へのトラフィックは、4 つのユーザー ロール ポリシーのいずれかの対象となります。これらのポリシーの 1 つ目は、UAC キャプティブポータルを使用して、認証されていないユーザーを認証のためにアクセス制御サービスにリダイレクトします。
ゾーン 1 からゾーン 3 へのトラフィック、およびゾーン 2 からゾーン 3 へのトラフィックのアクセスは、アクセス制御サービスからプッシュされるリソース ポリシーによって制御されます。
プラットフォーム固有のユーザーロールファイアウォールセキュリティポリシーの動作
Feature Explorerを使用して、特定の機能に対するプラットフォームとリリースのサポートを確認します。
次の表を使用して、プラットフォームのプラットフォーム固有の動作を確認します。
プラットフォーム固有のローカル認証動作
| プラットホーム |
差 |
|---|---|
| SRX シリーズ |
|
プラットフォーム固有のファイアウォール認証動作
| プラットホーム |
差 |
|---|---|
| SRX シリーズ |
|