サイト間IPSec VPN

IPSecの利用例の一つに、インターネットを介して企業の拠点(サイト)のLANを相互接続することがあります。拠点(サイト)同士を接続するので、「サイト間VPN」または「サイトツーサイト(Site-to-site)VPN」と呼びます。

サイト間IPSec VPNの簡単な構成例は次の図です。

図 サイト間VPN
図 サイト間VPN

IPSec VPNによって、VPN GW1とVPN GW2間でIPパケットをESPでカプセル化し、盗聴や改ざんができないようにします。その結果、インターネットを介して、LAN1とLAN2間の通信を安全に行うことができるようになります。

IPSec VPNを確立するデバイスをVPNゲートウェイやセキュリティゲートウェイと呼びます。ルータにもIPSecを実装して、VPNゲートウェイとして動作させることができます。

サイト間IPSec VPNの動作の流れ

サイト間IPSec VPNの動作ステップは、基本的に次の5つです。

  • サイト間の通信のパケットが到着
  • ISAKMP SAの作成(IKEフェーズ1)
  • IPSec SAの作成(IKEフェーズ2)
  • パケットをカプセル化して転送(ESPまたはAH)
  • SAの維持

ステップ1:サイト間の通信のパケットが到着

IPSec VPNに通す対象パケット、すなわちサイト間の通信のパケットがVPNゲートウェイに到着することで、IPSec VPNのSAの作成が始まります。

Ciscoでは、IPSec VPNに通す対象パケットはアクセスリストで識別します。このアクセスリストを特に「暗号アクセスリスト(ACL)」と呼びます。

ステップ2:ISAKMP SAの作成(IKEフェーズ1)

VPNゲートウェイ間でIKEフェーズ1のネゴシエーションにより、ISAKMP SAを作成します。以下のパラメータをVPNゲートウェイ間でネゴシエーションしてISAKMP SAを作成します。

  • 暗号化アルゴリズム
  • ハッシュアルゴリズム
  • 認証方式
  • Diffie-Hellman交換
  • SAのライフタイム

ISAKMP SAを作成することで、VPNゲートウェイがお互いが正規のデバイスであることを確認し、このあとのIPSec SA用の秘密鍵を生成することができ
ます。

ステップ3:IPSec SAの作成(IKEフェーズ2)

VPNゲートウェイ間でIKEフェーズ2のネゴシエーションを行い、実際にパケットをカプセル化して安全に転送するためのIPSec SAを生成します。IPSec SAを生成するにも、VPNゲートウェイ間で次のようなパラメータをネゴシーションします。

  • セキュリティプロトコル(ESP or AH)
  • ライフタイム
  • カプセル化モード
  • 暗号化アルゴリズム
  • ハッシュアルゴリズム
  • Diffie-Hellman交換

なお、IPSec SAは片方向のSAであることに注意してください。

ステップ4:パケットをカプセル化して転送(ESPまたはAH)

IPSec SAを通じてサイト間のパケットを転送します。そのために、IPSec SAでネゴシエーションしたカプセル化プロトコル(ESP or AH)でパケットをカプセル化して、インターネット上に送信します。

ESPまたはAHのカプセル化には、トンネルモードとトランスポートモードがあります。トンネルモードもしくはトランスポートモードであるかもIPSec SAのネゴシエーションで決めていますが、サイト間IPSec VPNの場合は、トンネルモードになるのが普通です。

ステップ5:SAの維持

SAは、ネゴシエーションで決定したSAのライフタイムにしたがってターミネートされます。ライフタイムは時間指定や転送したパケットのバイト指定で設定可能です。SAがターミネートされたあと新しいパケットがやってきた場合、再びIKEのネゴシエーションから行います。

以上の5ステップで、サイト間IPSec VPNを確立してサイト間で安全な通信ができるようになります。