IPSec VPN ネゴシエーションについて
IPSec VPN トンネルの各 endpoint にあるデバイスは、IPSec ピアです。VPN トンネルを構築する際に、IPSec ピアは暗号化および認証に関する一連のメッセージを交換し、多くのさまざまなパラメータへの合意を試行します。この処理は、VPN ネゴシエーションと知られています。ネゴシエーション シーケンス内の 1 つのデバイスは、イニシエータであり、もう 1 つは、応答者です。
VPN ネゴシエーションは、フェーズ 1 と フェーズ 2 の 2 つの別々のフェーズに発生します。
フェーズ 1
フェーズ 1 の主な目的としては、2 つのピアがフェーズ 2 とネゴシエーションするように安全な暗号化されたチャンネルを設定することです。フェーズ 1 が正常に終了すると、ピアがフェーズ 2 へすばやく移動します。フェーズ 1 に失敗すると、デバイスではフェーズ 2 を開始できません。
フェーズ 2
フェーズ 2 へのネゴシエーションの目的としては、2 つのピアによって、VPN を通じて通過するトラフィックを定義する一連のパラメータおよびトラフィックの暗号化方法と認証方法について合意することです。この契約は、セキュリティ アソシエーションと呼ばれます。
フェーズ 1 とフェーズ 2 の構成は、トンネルの各末端にあるデバイスと一致する必要があります。
フェーズ 1 のネゴシエーション
フェーズ 1 のネゴシエーションでは、2 つの VPN ゲートウェイ デバイスが認証情報を交換します。デバイスをお互いに識別し、フェーズ 1 の設定に使用する共有セットを調べます。フェーズ 1 のネゴシエーションの完了後、2 つのデバイスには、フェーズ 1 の Security Association (SA) があります。この SA は、指定された時間の間有効になります。フェーズ 1 の SA の期限が切れる前に 2 つの VPN ゲートウェイがフェーズ 2 のネゴシエーションを完了しなかった場合、フェーズ 1 ネゴシエーションを再度完了する必要があります。
フェーズ 1 のネゴシエーション プロセスは、ゲートウェイ endpoint で使用される IKE のバージョンに依存します。IKE はこのフェーズで IPSec ピアを認証して IKE SA をネゴシエートし、フェーズ 2 で IPSec SA をネゴシエートするための安全な通信チャネルを設定します。
フェーズ 1 のネゴシエーションには、次のステップが含まれます。
- デバイスが使用する IKE バージョン (IKEv1 または IKEv2) に合意します。各デバイスは IKEv1 または IKEv2 を使用できます。両方のデバイスの IKE バージョンは、一致している必要があります。
- デバイスが認証情報を交換します。
認証情報は、証明書または事前定義の共有キーである場合があります。両方のゲートウェイ endpoint は、同じ認証メソッドを使用する必要があり、認証情報は一致している必要があります。
- デバイスをお互いに識別します。
各デバイスは、フェーズ 1 識別子を提供します。識別子は、IP アドレス、ドメイン名、ドメイン情報または X500 名などです。各デバイスの VPN 構成は、ローカルおよびリモート デバイスのフェーズ 1 識別子を指定します。構成は、一致する必要があります。
- IKEv1 では、フェーズ 1 ネゴシエーションでメイン モードを使用するかアグレッシブ モードを使用するかは VPN ゲートウェイが決めます。
IKE ネゴシエーションを開始する VPN ゲートウェイは、メインモード プロポーザルまたはアグレッシブ モード プロポーザルを送信します。もう一方の VPN ゲートウェイは、プロポーザルがこのモードを使用できるように構成されていない場合、拒否できます。
- メイン モードは、双方の VPN ゲートウェイのアイデンティティを保証しますが、このモードの使用は両方のデバイスが静的 IP アドレスである場合に限られます。メイン モードでは、IP アドレスとゲートウェイ ID を検証します。
- アグレッシブ モードは、2 つの VPN ゲートウェイ間でのやり取りが少ないため、メイン モードよりも高速ですが、安全性は低くなります。アグレッシブ モードを使用する場合、交換は主に両方の VPN ゲートウェイによる交換で使用される ID のタイプに依存します。アグレッシブ モードは、VPN ゲートウェイのアイデンティティを保証するわけではありません。CVE-2002-1623 に記載されている IKEv1 アグレッシブ モードの脆弱性は、証明書を構成しない限りアグレッシブ モードはメイン モードよりも安全性が低いことを意味します。
- VPN ゲートウェイは、フェーズ 1 の次のパラメータに同意します。
- NAT Traversal を使用するかどうか
- IKE キープアライブを使用するかどうか (Firebox 間のみ)
- デッド ピア ディテクション (RFC 3706) を使用するかどうか
IKE キープアライブは古い設定です。代わりに、DPD が推奨されます。
IKEv2 の場合、NAT Traversal と DPD は常に有効になっており、IKE キープアライブはサポートされていません。
- VPN ゲートウェイは、フェーズ 1 の次の変換設定に同意します。フェーズ 1 の各 IPSec デバイスの変換の設定は、完全に一致している必要があります。一致していない場合、IKE ネゴシエーションが失敗します。
フェーズ 1 の変換で設定可能な項目は、以下のとおりです。
- 認証 — 認証のタイプ (SHA-2、SHA-1 または MD5)
- 暗号化 — 暗号化アルゴリズムのタイプ (DES、3DES、または AES) およびキー長
- SA の有効期限 — フェーズ 1 のセキュリティ アソシエーションの期限が切れるまでの時間
- キー グループ — Diffie-Hellman キー グループ
SHA-2 は XTM
フェーズ 2 のネゴシエーション
フェーズ 2 のネゴシエーションには、次のステップが含まれます。
- VPN ゲートウェイは、フェーズ 2 のネゴシエーションをセキュリティで保護するためにフェーズ 1 の SA を使用します。VPN ゲートウェイは、Perfect Forward Secrecy (PFS) を使用するかどうかに同意します。
VPN の暗号化キーは、キーの有効期限の強制 設定で指定した間隔で変更されます。この間隔の規定値は、8 時間です。SA がフェーズ 1 のキーをフェーズ 2 に使用しないようにするために、PFS は 2 回目の DH 計算を強制的に発生させます。つまり、フェーズ 1 とフェーズ 2 では常にキーが異なり、これにより、14 よりも下の DH グループを選択しない限り破るのが困難になります。
データの安全性を確保するために、PFS を利用することをお勧めします。PFS を使用したい場合は、両方の VPN ゲートウェイで有効にし、両方のゲートウェイで同じ Diffie-Hellman キー グループを使用しなければなりません。
-
VPN ゲートウェイは、フェーズ 2 のプロポーザルに同意します。
フェーズ 2 のプロポーザルには、認証データを使用するためのアルゴリズム、暗号化データを使用するためのアルゴリズムおよび新しいフェーズ 2 の暗号化キーを作成する回数が含まれます。
フェーズ 2 のプロポーザルに設定できる項目は、以下のとおりです。
- タイプ — 手動の BOVPN の場合は、認証ヘッダー (AH) とカプセル化セキュリティ ペイロード (ESP) のいずれかから、使用するプロトコルを選択できます。AH、ESP ともにデータを暗号化し、スプーフィングやパケット操作 (リプレイ検出) から保護します。他の方法でスプーフィングを防ぐことができるため、ESP を使うことをお勧めします。管理対象 BOVPN、Mobile VPN with IKEv2、Mobile VPN with IPSec、Mobile VPN with L2TP は常に ESP を使用します。
- 認証 — 認証によって、受信情報と送信情報がまったく同じであることが確認されます。SHA-1、SHA-2、または MD5 は、VPN ゲートウェイ同士が IKE メッセージの認証に使用するアルゴリズムとして使用できます。SHA-2 は唯一の安全なオプションです。
- 暗号化 — 暗号化によって、データの機密性が確保されます。DES、3DES、または AES、または AES-GCM を選択できます。AES と AES-GCM のバリアントは唯一の安全なオプションです。
- キーの有効期限の強制 — フェーズ 2 の暗号化キーが定期的に変更されていることを確認するには、キーの有効期限の間隔を指定します。既定の設定は 8 時間です。フェーズ 2 の暗号化キーを長い間使用中である場合、攻撃者がキーに攻撃するために収集できるデータも大きくなります。Firebox の負荷が高く、スループットの問題、パケット ロス、および頻繁かつランダムな停止が発生するため、トラフィック オプションを選択しないことをお勧めします。トラフィック オプションは、ほとんどのサードパーティ デバイスで動作しません。
-
VPN ゲートウェイは、フェーズ 2 のトラフィック セレクタ (トンネル ルート) を交換します。
ローカルおよびリモート VPN ゲートウェイのフェーズ 2 のトラフィック セレクタを、ホスト IP アドレス、ネットワーク IP アドレスまたは IP アドレス範囲として指定できます。フェーズ 2 のトラフィック セレクタは常にペアとしてフェーズ 2 のプロポーザルに送信されます。1 つのペアは、VPN にトラフィックを送信できるローカル デバイスの IP アドレスを示し、もう 1 つのペアは、VPN にトラフィックを送信できるリモート デバイスの IP アドレスを示します。これは、トンネルのルート としても知られています。