Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

SSL証明書

SSLプロキシとして機能するSRXシリーズファイアウォールは、一方の端でクライアントともう一方の端でサーバー間のSSL接続を管理します。SSLプロキシサーバーは、暗号化技術を使用してデータの安全な送信を保証します。SSLは、証明書と秘密鍵と公開鍵の交換ペアに依存して、安全な通信を提供します。このトピックでは、SSL 接続用のセキュリティ デバイスに SSL 証明を生成してインストールする方法について説明します。

SSL 証明書の設定と読み込み

図 1 は、SSL プロキシーの構成方法の概要を示しています。SSLプロキシーの構成には、以下が含まれます。

  • ルート CA 証明書の設定

  • CA プロファイル・グループのロード

  • SSL プロキシ プロファイルを設定し、ルート CA 証明書と CA プロファイル グループを関連付けます

  • セキュリティー・ポリシーへの SSL プロキシー・プロファイルの適用

図 1: SSL プロキシ構成の概要 Flowchart showing steps to configure SSL proxy profile: define root CA certificate, configure trusted CA profile, configure SSL proxy profile, apply profile to security policy.

ルート CA 証明書を構成するには、「 証明書の登録」を参照してください。

次のセクションで、これらの手順について詳しく説明します。

サーバー認証失敗を無視する

サーバー認証

クライアントとデバイス間の暗黙の信頼(クライアントがデバイスによって生成された証明書を受け入れるため)は、SSLプロキシの重要な側面です。サーバー認証が危険にさらされないことは非常に重要です。しかし、実際には、自己署名証明書や異常のある証明書が豊富にあります。異常には、期限切れの証明書、ドメイン名と一致しない共通名のインスタンスなどが含まれます。

サーバー認証は、SSL プロキシー・プロファイルで ignore-server-auth-failure オプションを設定することによって制御されます。このオプションを設定した結果を 表1に示します。

表 1: [サーバー認証失敗を無視する] オプション

SSL プロキシ プロファイル アクション

業績

ignore-server-auth-failureオプションは設定されていません(デフォルトオプション)

  • 認証が成功すると、鍵を置き換え、発行者名をプロキシー・プロファイルのルート CA 証明書で構成されている発行者名に変更することで、新しい証明書が生成されます。

  • 認証に失敗すると、接続は切断されます。

ignore-server-auth-failure オプションが設定されています

  • 証明書が自己署名の場合は、キーを置き換えて新しい証明書が生成されます。発行者名は変更されません。これにより、証明書が無効であるという警告がクライアントブラウザに表示されます。

  • 証明書の有効期限が切れている場合、または共通名がドメイン名と一致しない場合は、キーを置き換えて発行者名をSSL-PROXY: DUMMY_CERT:GENERATED DUE TO SRVR AUTH FAILUREに変更することで、新しい証明書が生成されます。

    これにより、証明書が無効であるという警告がクライアントブラウザに表示されます。

  • このオプションを設定すると、Web サイトがまったく認証されなくなるため、認証にはお勧めしません。ただし、このオプションを使用すると、SSL セッションがドロップされた根本原因を効果的に特定できます。 SSLプロキシのデバッグとトレースの有効化を参照してください。

クライアント認証

現在、クライアント認証はSSLプロキシではサポートされていません。サーバーがクライアント認証を要求すると、証明書が使用できないという警告が発行されます。この警告により、サーバーは続行するか終了するかを決定できます。

SSL プロキシの証明書失効リスト

SSL プロキシの証明書失効リストの操作

認証局 (CA) は、証明書失効リスト (CRL) を使用して、失効した証明書のリストを定期的に発行します。セキュリティ デバイスは、最後に発行された CRL をダウンロードしてキャッシュします。CRL には、有効期限が切れる前に取り消されたシリアル番号を持つデジタル証明書のリストが含まれています。

CA は、証明書が侵害される可能性がある場合、発行された証明書を失効させます。証明書を取り消すその他の理由には、次のようなものがあります。

  • 指定なし(特に理由は示されていません)。

  • 証明書を発行した証明書または CA に関連付けられている秘密キーが侵害されました。

  • 証明書の所有者は、証明書の発行者とは関係がなくなりました

  • 別の証明書が元の証明書に置き換わります。

  • 証明書を発行した CA は動作を停止しました。

  • 証明書は、さらなるアクションを保留しています。取り消されたものとして扱われますが、将来受け入れられる可能性があります。

参加デバイスは、デジタル証明書を使用する場合、証明書の署名と有効性をチェックします。デフォルトでは、CRL 検証は SSL プロキシ プロファイルで有効になっています。

Junos OS リリース 15.1X49-D30 および Junos OS リリース 17.3R1 以降、SRXシリーズファイアウォールは証明書失効リスト(CRL)をサポートしています。SRXシリーズファイアウォールでのCRL検証には、サーバーから失効した証明書の確認が含まれます。

SRXシリーズファイアウォールでは、SSLプロキシプロファイルの証明書失効チェックがデフォルトで有効になっています。CRL 検証は、特定のセキュリティ要件を満たすように有効または無効にすることができます。

  • CRL 検証を無効にします。
  • CRL 検証を再度有効にします。

CRL のダウンロードの失敗や、ルート証明書または中間証明書の CRL パスが利用できないなどの理由で CRL 情報が利用できない場合に、セッションを許可またはドロップできます。

  • CRL 情報が使用できない場合は、セッションを許可します。

  • CRL 情報が利用できない場合は、セッションをドロップします。

  • SRXシリーズファイアウォールを設定して、失効ステータスに関する信頼できる確認なしで証明書を受け入れ、証明書が失効して失効理由が保留になっている場合にセッションを許可します。

SSL パフォーマンスの強化

SRXシリーズファイアウォールのSSLパフォーマンス強化には、以下の機能が含まれます。

SSL パフォーマンスの最適化

SSL/TLSハンドシェイクは、CPUを集中的に使用するプロセスです。SSL/TLSはWeb上で最も広く使用されているセキュリティプロトコルであるため、そのパフォーマンスはWebパフォーマンスに大きな影響を与えます。

Junos OS リリース 15.1X49-D120 以降では、パフォーマンスを最適化するために以下のオプションを使用できます。

  • 最適化された RSA 鍵交換を使用する

  • 関連データ(AEAD)による認証済み暗号化の使用—AES128-CBC-SHA、AES256-CBC-SHA

  • 証明書キャッシュの維持 - 証明書キャッシュには、禁止されたサーバー証明書がサーバー証明書の詳細とともに保存されます。SSL/TLSハンドシェイク中に、SSLプロキシは、新しい禁止された証明書を生成する代わりに、キャッシュされた禁止された証明書をクライアントに提示できます。

SSLパフォーマンスを改善すると、セキュリティを損なうことなくWebサイトのパフォーマンスが向上し、ユーザーエクスペリエンスが最大限に向上します。

必要に応じて、証明書キャッシュに対して次の設定を構成できます。ただし、デフォルト値を保持することをお勧めします。

例:

  • (オプション)証明書キャッシュのタイムアウト値を設定します(例:300秒)。

    この例では、証明書キャッシュは証明書の詳細を 300 秒間保存します。デフォルトのタイムアウト値は 600 秒です。

  • (オプション)証明書キャッシュを無効にします。

    証明書キャッシュを無効にすると、デバイスは新しい接続の SSL フル ハンドシェイクを許可します。デフォルトでは、証明書キャッシュは有効になっています。

  • (オプション)既存の証明書キャッシュを無効にします。

    この例では、証明書失効リスト(CRL)が更新されると、デバイスは既存の証明書キャッシュを無効にします。既定では、[CRL 更新時に証明書キャッシュを無効にする] は無効になっています。

セッションの再開

SSL セッション再開は、既にネゴシエートされたセッション ID を使用して前のセッションを再開するメカニズムを提供します。セッションの再開により、クライアントとサーバーは、完全な SSL ハンドシェイクと新しい主キーの生成の計算オーバーヘッドを節約します。

セッションの再開により、ハンドシェイク プロセスが短縮され、SSL トランザクションが高速化されるため、適切なレベルのセキュリティを維持しながらパフォーマンスが向上します。

TLS 1.2は、セッション識別子とセッションチケットメカニズムを使用してセッション再開をサポートします。SSL セッションの再開には、以下のステップが含まれます。

  • セッションキャッシュメカニズムは、クライアントとサーバーの両方について、プリマスター秘密鍵や合意された暗号方式などのセッション情報をキャッシュします。

  • セッション ID は、キャッシュされた情報を識別します。

  • その後の接続では、両者は、プリマスター秘密鍵を作成するのではなく、セッション ID を使用して情報を取得することに同意します。

Junos OS リリース 22.1R1 以降、TLS 1.3 は SSL プロキシの事前共有キー(PSK)を使用したセッション再開をサポートしています。PSKを使用したセッションの再開では、以前に確立された共有秘密鍵を使用してセッションを再開できるため、SSLハンドシェイクのオーバーヘッドを削減できます。

PSKは、最初のTLSハンドシェイクから導出された一意の暗号化キーです。TLS ハンドシェイクが成功すると、サーバーは PSK ID をクライアントに送信します。クライアントは、今後のハンドシェイクでその PSK ID を使用して、関連付けられた PSK の使用をネゴシエートし、セッションを再開します。

TLS1.3 を使用した SSL セッションの再開には、以下のステップが含まれます。

  1. 最初のTLSハンドシェイクの後、サーバーはPSK ID(PSKの暗号化されたコピー)を含む新しいセッションチケットメッセージをクライアントに送信します。

  2. 次回、クライアントがセッションを再開しようとすると、同じセッションチケットをHelloメッセージでサーバーに送信します。
  3. サーバーはメッセージを復号化し、PSK を識別し、キャッシュからセッション情報を取得してセッションを再開します。

SSL-I(SSL 開始)は ECDHE 鍵交換モードを備えた PSK を使用し、SSL-T(SSL 終了)は ECDHE 交換モードで PSK および PSK を使用します。

SSL プロキシー・セッションは、セッション再開のための接続の両端で、TLS1.3 および TLS1.2 以前のバージョン間の相互運用性をサポートします。

デフォルトでは、セッションの再開はSSLプロキシーに対して有効になっています。要件に応じて、セッションの再開をクリアしたり、再度有効にしたりできます。

  • セッションの再開をクリアするには:
  • セッションの再開を再度有効にするには:

次のコマンドを使用して、セッションタイムアウト値を設定します。

タイムアウトの値は、300秒から86400秒の間で設定できます。デフォルト値は 86400 秒 (24 時間) です。

セッションの再ネゴシエーション

SRXシリーズファイアウォールは、セッションの再ネゴシエーションをサポートしています。セッションが作成され、SSL トンネル トランスポートが確立された後、SSL パラメータの変更には再ネゴシエーションが必要になります。SSLプロキシは、セキュア(RFC 5746)と非セキュア(TLS v1.0、TLS v1.1、およびTLS v1.2)の両方の再ネゴシエーションをサポートします。セッション再開が有効な場合、セッションの再ネゴシエーションは以下の状況で役立ちます。

  • 暗号鍵は、長時間の SSL セッションの後に更新する必要があります。

  • より安全な接続を実現するには、より強力な暗号を適用する必要があります。

証明書、暗号強度、または信頼できる CA リストを変更して SSL プロキシ プロファイルを変更した場合、変更されたポリシーをコミットすると、システムはキャッシュ エントリをフラッシュします。この場合、新しい SSL パラメーターを確立するには、完全なハンドシェイクが必要です。(SSL以外のセッションへの影響はありません。

SSL プロキシー・プロファイルが変更されていない場合、そのプロファイルに対応するキャッシュ・エントリーはフラッシュされず、セッションは続行されます。

SMTP セッションの StartTLS のネゴシエーション

StartTLSは、最初のプレーンTCP接続からより安全なTLS接続へのSMTPセッションを有効にします。StartTLSは、ピア間のネゴシエーションが成功した後、TLSレイヤーを介したサーバーとクライアント間のSMTPセッションを許可します。StartTLSは、既存の安全でないプレーンSMTP接続を安全なSSL/TLS接続にアップグレードします。

しきい値を設定して、クライアントから StartTLS が受信されない場合にセッションを無視するまでの待機時間を決定できます。

次のオプションを設定できます。

  • byte-threshold:クライアントから StartTLS が受信されていない場合にセッションを無視する前に許可される暗号化されていないセッションの最小バイト数。範囲は 100 から 300。
  • packet-threshold:クライアントから StartTLS が受信されていない場合にセッションを無視する前に、クライアントからサーバー方向に許可される暗号化されていないパケットの数。範囲 1 から 15。

例:

この例では、SSLプロキシは100バイトのプレーン(暗号化されていない)SMTPトラフィックを許可します。100 バイトに達すると、クライアントから StartTLS が受信されない場合は、セッションが無視されます。

この例では、SSLプロキシはプレーン(暗号化されていない)SMTPトラフィックの2つのパケットを許可します。パケットが 2 つに達した後、クライアントから StartTLS が受信されない場合は、セッションを無視します。

ドメイン名の動的解決

ドメイン名に関連付けられたIPアドレスは動的であり、いつでも変更できます。ドメインIPアドレスが変更されるたびに、SSLプロキシ設定に反映されます(ファイアウォールポリシー設定で実行されるのと同様)。

変更履歴

サポートされる機能は、使用しているプラットフォームとリリースによって決まります。特定の機能がお使いのプラットフォームでサポートされているかどうかを確認するには、 Feature Explorer を使用します。

解放
形容
15.1X49-D30
Junos OS リリース 15.1X49-D30 および Junos OS リリース 17.3R1 以降、SRXシリーズファイアウォールは証明書失効リスト(CRL)をサポートしています。