SSLプロキシの設定
SSLフォワードプロキシの設定
SSLプロキシ設定の概要
SSLプロキシプロファイルをセキュリティポリシーに適用する
SSLプロキシは、セキュリティポリシー内のアプリケーションサービスとして有効にされています。セキュリティポリシーでは、SSLプロキシを有効にするトラフィックを一致基準として指定し、次にトラフィックに適用するSSLプロキシCAプロファイルを指定します。
セキュリティポリシーでSSLプロキシを有効にするには:
この例では、セキュリティゾーンtrustとuntrustを作成し、trustゾーンからuntrustゾーンへのトラフィックのセキュリティポリシーを作成していることを前提としています。
SSLプロキシロギングの設定
SSLプロキシを設定する場合、ログの一部または全部を受信するオプションを選択できます。SSLプロキシログには、論理システム名、SSLプロキシ許可リスト、ポリシー情報、SSLプロキシ情報、およびエラーが発生した場合のトラブルシューティングに役立つその他の情報が含まれています。
エラー、警告、情報イベントなど、 all または特定のイベントのログを設定できます。また、許可リストに登録される、ドロップされる、無視される、またはエラー発生後に許可されるセッションのログを設定することもできます。
[edit] user@host# set services ssl proxy profile profile-name actions log all user@host# set services ssl proxy profile profile-name actions log sessions-whitelisted user@host# set services ssl proxy profile profile-name actions log sessions-allowed user@host# set services ssl proxy profile profile-name actions log errors
enable-flow-tracingオプションを使用して、デバッグトレースを有効にすることができます。
サーバー認証を無視する
Junos OSでは、サーバー認証を完全に無視するオプションを設定できます。認証を無視するようにシステムを設定した場合、SSLハンドシェイク時にサーバー証明書の検証中に発生したエラーは無視されます。一般的に無視されるエラーには、CA署名を検証できない、証明書の有効期限が間違っているなどがあります。このオプションを設定しない場合、エラーが発生した場合、サーバーが自己署名証明書を送信するすべてのセッションが破棄されます。
このオプションを認証に使用することはお勧めしません。設定するとWebサイトがまったく認証されなくなるためです。ただし、このオプションを使用して、SSLセッションをドロップした根本的原因を効果的に特定できます。
設定モードから、サーバー認証を無視するように指定します。
[edit] user@host# set services ssl proxy profile profile-name actions ignore-server-auth-failure
SSLリバースプロキシ
概要
プロキシモデルの実装(リバースプロキシ)は、サーバー保護を強化します。ハンドシェイクが向上し、より多くのプロトコルバージョンがサポートされます。アプリケーションセキュリティ、IPS、コンテンツセキュリティ、ATPクラウドなどのレイヤー7サービスを、SSLリバースプロキシ復号化トラフィックで有効にできます。
IDP SSLインスペクション機能を使用する代わりに、SSLリバースプロキシと侵入検知および防御(IDP)の使用を推奨します。最近のJunos OSリリースでは、IDP SSLインスペクションは、すぐには削除されませんが、非推奨となっています。これは、後方互換性を確保し、新しい設定に適合させる機会を提供するためです。
リバースプロキシの機能:
-
ファイアウォール上のクライアントSSLを終了し、サーバーとの新しいSSL接続を開始します。クライアント/サーバーからのSSLトラフィックを復号化し、サーバー/クライアントに送信する前に(検査後に)再度暗号化します。
-
現在のプロトコルバージョンをすべてサポートします。
-
-
RSAをサポート
-
DHEまたはECDHEのサポート
-
-
既存のSSLフォワードプロキシを使用し、その下にTCPプロキシを使用します。
-
フォワードプロキシと同様に、復号化されたSSLトラフィックはすべてのセキュリティサービスで利用できます。
-
一般的に使用される暗号はすべてサポートされています。
SSLプロキシプロファイルで root-ca または server-certificate のいずれかを設定する必要があります。それ以外の場合、コミットチェックは失敗します。サポートされている設定の詳細については、以下の表を参照してください。
| サーバー証明書が設定されています |
root-ca設定済み |
プロファイルタイプ |
|---|---|---|
| いいえ |
いいえ |
コミットチェックに失敗します。 |
| はい |
はい |
コミットチェックに失敗します。同じプロファイルで |
| いいえ |
はい |
フォワードプロキシ |
| はい |
いいえ |
リバースプロキシ |
フォワードおよびリバースプロキシプロファイルの複数のインスタンスの設定がサポートされています。しかし、特定のファイアウォールポリシーでは、設定できるプロファイル(フォワードプロキシプロファイルまたはリバースプロキシプロファイル)は1つだけです。同じデバイス上でフォワードプロキシとリバースプロキシの両方を設定することもサポートされています。
特定のファイアウォールポリシーに対して、以前のリバースプロキシ実装を新しいリバースプロキシ実装で設定することはできません。両方が設定されている場合は、コミットチェック失敗メッセージが表示されます。
以下は、リバースプロキシを設定するための最小手順です。
SSLフォワードプロキシとリバースプロキシでは、ファイアウォールルールレベルでプロファイルを設定する必要があります。さらに、リバースプロキシ用のプライベートキーでサーバー証明書を設定する必要もあります。SSLハンドシェイク中に、SSLプロキシは、サーバープライベートキーハッシュテーブルデータベースで一致するサーバープライベートキーのルックアップを実行します。ルックアップが成功すると、ハンドシェイクは続行されます。それ以外の場合、SSLプロキシはハンドシェイクを終了します。リバースプロキシはサーバー証明書を禁止しません。実際のサーバー証明書/チェーンを変更せずに、そのままクライアントに転送します。サーバー証明書の傍受は、フォワードプロキシでのみ発生します。
SSLリバースプロキシの設定
この例では、サーバー保護を有効にするためにリバースプロキシを設定する方法を示しています。サーバー保護のために、さらに、プライベートキーを含むサーバー証明書を設定する必要があります。
リバースプロキシは、サーバーの詳細をクライアントから隠すことでサーバーを保護し、そこでセキュリティ層を追加します。
SSLリバースプロキシを設定するには、以下のことが必要です:
サーバー証明書とそのキーをファイアウォールの証明書リポジトリにロードします。
サーバー証明書識別子をSSLプロキシプロファイルにアタッチします。
SSLプロキシプロファイルをセキュリティポリシーのアプリケーションサービスとして適用します。
SSLリバースプロキシを設定するには:
デバイス上のSSLリバースプロキシ設定の確認
目的
ファイアウォール上のSSLリバースプロキシ統計を表示します。
アクション
SSLプロキシの統計情報は、 show services ssl proxy statistics コマンドを使用して表示できます。
root@host> show services ssl proxy statistics PIC:spu-1 fpc[0] pic[1] ------ sessions matched 0 sessions whitelisted 0 sessions bypassed:non-ssl 0 sessions bypassed:mem overflow 0 sessions bypassed:low memory 0 sessions created 0 sessions ignored 0 sessions active 0 sessions dropped 0
コンテンツセキュリティを備えたSSLフォワードプロキシの設定
この手順では、コンテンツセキュリティを使用してSSLフォワードプロキシプロファイルを設定します。コンテンツセキュリティを設定すると、SSLプロキシは、クライアントからSSLセッションを終了し、サーバーへの新しいSSLセッションを確立することでSSLサーバーとして機能します。ファイアウォールは、すべてのSSLプロキシトラフィックを復号化してから再暗号化します。コンテンツセキュリティは、SSLプロキシから復号化されたコンテンツを使用できます。
ローカル証明書をroot-caとして生成します。
コンテンツセキュリティを備えたSSLリバースプロキシの設定
この手順では、コンテンツセキュリティを使用してSSLリバースプロキシプロファイルを設定します。
SSLプロキシの除外宛先の許可リストの作成
SSLの暗号化と復号化は、ファイアウォール上のメモリリソースを消費する可能性があります。これを制限するには、使い慣れた信頼できるサーバーやドメインとトランザクションするセッションなど、一部のセッションのSSLプロキシ処理を選択的にバイパスできます。法的要件により、金融サイトや銀行サイトとのセッションを除外することもできます。
SSLプロキシからセッションを除外するには、サーバーのIPアドレスまたはドメイン名を追加して許可リストを作成します。許可リストには、SSLプロキシ処理の対象を除外したいアドレスが含まれています。
許可リストを作成するには、以下の手順を使用します。
グローバルアドレス帳にIPアドレスとドメイン名を指定します。
SSLプロキシプロファイルのグローバルアドレス帳を参照してください。
グローバルアドレス帳には、以下のタイプのIPアドレスを設定できます。
IPv4アドレス(プレーンテキスト)例えば:
set security address-book global address address-4 192.0.2.117
IPv4アドレス範囲。例えば:
set security address-book global address address-2 range-address 192.0.2.117 to 192.0.2.199
IPv4 ワイルドカード。例えば:
set security address-book global address address-3 wildcard-address 203.0.113.0/24
DNS名。例えば:
set security address-book global address address-1 dns-name www.abc.com
IPv6アドレス。例えば:
set security address-book global address address-5 FE80::/10
許可リストは、以下のタイプのIPアドレスをサポートしていません。
変換されたIPアドレス。セッションは、変換されたIPアドレスではなく、実際のIPアドレスに基づいて許可リストに登録されます。このため、SSLプロキシプロファイルの許可リスト設定では、変換されたIPアドレスではなく、実際のIPアドレスを指定する必要があります。
連続していないネットマスク。例えば:
IPアドレス-203.0.113.0とマスク255.255.255.0(203.0.113.0/24)がサポートされています。
IPアドレス - 203.0.113.9およびマスク255.0.255.0はサポートされていません。
次の例は、SSLプロキシプロファイルで許可リストを使用する方法を示しています。
この例では、すべてのセッションを www.mycompany.comから除外しています。そのためには、まずアドレス帳にドメインを指定してから、SSLプロキシプロファイルにアドレスを設定します。
SSLプロキシの除外URLカテゴリの許可リストの作成
コンテンツセキュリティモジュールでURLカテゴリを設定して、ファイアウォールでのSSL検査をスキップできます。これを行うために、SRXはSSLプロキシプロファイルを拡張Webフィルタリング(EWF)機能とリンクさせます。これを有効にすると、URLカテゴリをアドレス帳とともにSSLプロキシプロファイルの許可リストに追加できます。事前定義されたカテゴリから選択することも、コンテンツセキュリティでサポートされているカスタムカテゴリを作成することもできます。
セキュリティデバイスは、コンテンツセキュリティモジュールによって抽出されたサーバー名表示(SNI)フィールドを使用して、URLカテゴリを決定します。SSLプロキシは、この情報を使用して、セッションを受け入れるか、プロキシするか、無視するかを決定します。
SSLプロキシ許可リスト機能には、コンテンツセキュリティでサポートされているURLカテゴリが含まれ、SSLプロキシ許可リスト機能は、コンテンツセキュリティでサポートされているカスタムURLカテゴリにサポートを拡張します。
以下の例は、SSLプロキシプロファイルでURLカテゴリを設定する方法を示しています。
除外URLカテゴリの許可リストの作成
以下の手順を使用して、SSLプロキシプロファイルで定義済みのURLカテゴリを設定します。
除外されたカスタムURLカテゴリの許可リストの作成
SSLプロキシプロファイルでカスタムURLカテゴリを設定するには、以下の手順に従います。
SSLプロキシプロファイルの設定制限
SSLフォワードプロキシとSSLリバースプロキシの両方の設定における、信頼できるCA証明書、サーバー証明書、URLカテゴリの制限を更新しました。これらの変更により、構成 BLOB の最大サイズ制限である 56,986 バイトへの準拠が確保されます。
制限サイズの変更:
-
信頼できるCA証明書/サーバー証明書:最大400件(1024件から減少)
-
URLカテゴリ:最大上限800(変更なし)
設定ステートメント:
信頼できる CA 証明書
[edit] user@host# set services ssl proxy profile <profile-name> trusted-ca (all | [ca-profile] )
サーバー証明書
[edit] user@host# set services ssl proxy profile <profile-name> server-certificate
URLカテゴリ
[edit] user@host# set services ssl proxy profile <profile-name> whitelist-url-categories [whitelist url categories]
ERROR: Maximum blob size (56986 bytes) exceeded...current blob size is 57014 bytes. 400 Server certs are taking 54400 bytes, and 27 URL categories are taking 1728 bytes.
このエラーはメモリ使用量の内訳を提供し、それに応じて設定を調整するのに役立ちます。
プロキシ認証のサポート
プロキシプロファイルを使用して、認証がサポートされているプロキシサーバーを介してアウトバウンドHTTPSトラフィックを安全にルーティングできます。プロキシ認証は、プロキシプロファイル内で直接設定できます。ユーザー名とパスワードを設定することで、外部のフィードやサービスに安全にアクセスできます。この認証メカニズムは複数のサービスをサポートし、プロキシサーバーを介してセキュアで認証されたHTTPS通信を可能にします。
サーバー通信でHTTPプロキシをサポートする以下の接続に、プロキシ認証が含まれるようになりました。
- フィードをダウンロードしてアップロードするためのATPクラウドへのSecIntel接続。
- シグネチャデータベースをダウンロードするためのIDPとアプリケーション識別接続。
- 以下の機能のコンテンツセキュリティ(旧称 Unified Threat Management):
- Avira AVウイルスデータベースとエンジンアップデート接続。
- Sophos AV は、クラウドへのクエリーをスキャンします。
- Webフィルタリング URLカテゴリクエリーをクラウドに送信します。
- Webフィルタリングカテゴリの更新。
- WebフィルタリングURLフィードのダウンロード。
-
ATPクラウド接続:
- 登録プロセス
- ファイル送信接続
- ジュニパーCDNからのアンチウィルスシグネチャの更新。
- 動的アドレスグループフィード
- 公開キーインフラストラクチャデーモン:
- HTTPおよびHTTPS経由のSCEP登録。
- HTTPおよびHTTPS経由のCRLダウンロード。
プロキシ認証サポートのメリット
外部のフィードやサービスへのセキュアなアクセスを提供し、未検証のデータソースが保護されたネットワーク環境と相互作用するのを防ぎ、全体的なセキュリティ態勢を改善します。
設定サンプル
セキュアで認証された接続を確立するには、以下の設定を構成する必要があります。
プロキシプロファイルでの認証情報の設定
プロキシプロファイルでユーザー名とパスワードを設定して、プロキシ認証を設定します。
[edit] user@host# set services proxy profile <profile-name> protocol http host x.x.x.x port xxxx user@host# set services proxy profile <profile-name> protocol http username <username> user@host# set services proxy profile <profile-name> protocol http password <password>
セキュリティサービスでプロキシプロファイルを指定
例:
アプリケーション識別とIDP用のプロキシプロファイル
プロキシプロファイルを作成し、プロキシサーバーを介してアプリケーションシグネチャパッケージまたはIDPシグネチャパッケージをダウンロードするために使用します。
[edit] user@host# set services application-identification download proxy-profile <profile-name>
[edit] user@host# set security idp security-package proxy-profile <profile-name>
「明示的なプロキシサーバーを介した アプリケーションシグネチャパッケージのインストール 」および「 Junos OS IDPシグネチャパッケージ」を参照してください。
コンテンツセキュリティ用のプロキシプロファイル
プロキシプロファイルを、アップデート用にはAviraおよびSophosアンチウィルスエンジンに、安全なサーバー通信用にはジュニパーWebフィルタリングにプロキシプロファイルを構成します
[edit] user@host# set security utm default-configuration anti-virus avira-engine pattern-update proxy-profile <profile-name> user@host# set security utm default-configuration anti-virus sophos-engine server proxy-profile <profile-name> user@host# set security utm default-configuration web-filtering ng-juniper server proxy-profile <profile-name>
例:Avira Antivirusの設定、Webプロキシを使用したSophos Antivirus Live Protectionバージョン2.0の設定、および次世代Webフィルタリングの設定を参照してください。
ジュニパー ATP クラウドのプロキシ プロファイル
SRXシリーズファイアウォールでWebプロキシを介したHTTP(S)アウトバウンドアクセスを有効にするには、プロキシプロファイルを使用するようにジュニパーATPクラウドを設定します。これらのプロファイルは、アンチマルウェアポリシーとSecIntelポリシーに適用されます。
[edit] user@host# set services advanced-anti-malware connection url <url> user@host# set services advanced-anti-malware connection authentication tls-profile aamw-ssl user@host# set services advanced-anti-malware connection proxy-profile <profile-name>
[edit] user@host# set services security-intelligence url <url> user@host# set services security-intelligence authentication tls-profile aamw-ssl user@host# set services security-intelligence proxy-profile <profile-name>
詳細については、「 ジュニパー ATP クラウド向け明示的な Web プロキシ 」を参照してください。
PKI
CAプロファイルでプロキシプロファイルを設定します。デバイスは、証明書の登録、検証、または失効時に、CAサーバーではなくプロキシホストに接続します
[edit] user@host# set security pki ca-profile ca-profile-1 proxy-profile <profile-name> user@host# set security pki ca-profile ca-profile-1 ca-identity deviceCA user@host# set security pki ca-profile ca-profile-1 enrollment url http://ca.junipersecurity.net:8080/ejbca/publicweb/apply/scep/SRX/pkiclient.exe user@host# set security pki ca-profile ca-profile-1 revocation-check crl url http://va.junipersecurity.net/ca/deviceCA.crl
認証機関を参照してください
- サポート対象は、基本的な認証のみです。ユーザー名とパスワードを入力する必要があります。これらはBase64エンコード形式で
Proxy-Authorizationヘッダーに送信されます。 - ユーザー名とパスワードの両方を同時に設定してください。
- パスワードを定期的に更新し、不正アクセスの試みを監視して、堅牢なセキュリティを維持します。
変更履歴テーブル
サポートされる機能は、使用しているプラットフォームとリリースによって決まります。 機能エクスプローラー を使用して、機能がお使いのプラットフォームでサポートされているかどうかを確認します。