IPsecの基礎まとめ【IKE・AH・ESP・通信モードを解説】

IPsecに関するブログのアイキャッチ画像 ネットワーク
広告

 IPsecは,IPネットワーク上で通信の暗号化や認証を行うためのセキュリティ技術であり,基本情報技術者試験をはじめとする情報処理技術者試験で重要となる内容です。インターネットVPNなどでは,IPsecを利用することで安全な通信を実現しています。IPsecのしくみや構成を正しく理解できていますか?

IPsec=IPネットワーク上で暗号化・認証などのセキュリティ機能を提供するプロトコル群

 このページでは,IPsecについて,概要やSA,IKE(フェーズ1・フェーズ2),IPsec通信(トンネルモード,トランスポートモード),AH,ESP,さらにIPsecの課題についてシンプルにまとめています。通信の流れなど複雑な部分もありますが,ネットワークセキュリティの重要な技術なので,繰り返し確認して理解を深めましょう。

情報処理シンプルまとめ(ネットワーク)の各ページを順番に読んでいる場合,このページは,後回しにしてもかまいません。

※ 理解を深めるためには,先に,情報処理シンプルまとめ(ネットワーク)の各ページと,「暗号化の基礎まとめ」,「認証の基礎まとめ」を読んだ方が良いと思います。

広告

IPsec(Security Architecture for Internet Protocol)とは(セキュリティ機能と構成)

 IPsecは,IPネットワークでセキュリティ機能を提供するプロトコルです。鍵交換を行うIKE,認証を行うAH,暗号化や認証を行うESPなど,複数のプロトコルで構成されています。

※ IPsecはネットワーク層(OSI基本参照モデル)のプロトコルである

※ IPsecは,インターネットVPNを構築する際に用いられる(IPsec-VPN)

IPsec通信の流れに関する説明画像
SASecurity Association。通信を行う際に使用する論理的な通信路(コネクション)。SAは,一方向通信のコネクションであるため,双方向で通信する場合は,2つ必要になる(各SAは,SPIというインデックスを使用することで一意に識別することができる)
ISAKMP-SAInternet Security Association and Key Management Protocol SA。IKEのフェーズ1で確立される論理的な通信路で,IKEのフェーズ2の通信を暗号化するために使用される
IPsec-SAIKEのフェーズ2で確立される論理的な通信路で,AHやESPによるIPsecの暗号通信で使用される

※ SPIや,IKE,IPsec通信の詳細は,後述

IKE(Internet Key Exchange)とは(鍵交換プロトコル)

 IKEとは,暗号化や認証に使用するアルゴリズムや共通鍵などの情報を,事前に通信者間で共有するためにやり取りする鍵交換プロトコルのことをいいます。

※ IKEでは,DH(Diffie-Hellman)法により動的に設定する

フェーズ1(ISAKMP-SA の確立)

 フェーズ1では,フェーズ2で行う通信を暗号化するための情報を交換し,ISAKMP-SAを確立します。

※ フェーズ2では,IPsecの暗号通信で使用する情報を交換するが,その情報が漏えいすると信頼性が損なわれるので,フェーズ2の通信も暗号化する必要がある

メインモードとは(IKE フェーズ1)

 メインモードの場合は,次のような流れになります。

IKEのフェーズ1のメインモードに関する説明画像
アグレッシブモードとは(IKE フェーズ1)

 アグレッシブモードの場合は,次のような流れになります。

IKEのフェーズ1のアグレッシブモードに関する説明画像

フェーズ2(IPsec-SA の確立)

 フェーズ2では,IPsecの暗号通信で使用する暗号アルゴリズムと認証アルゴリズムを決定して,暗号用の鍵と認証用の鍵を生成し,IPsec-SAを確立します。

※ フェーズ2では,フェーズ1で確立した(暗号化された通信路である)ISAKMP-SAを使用する

フェーズ2に関する説明画像

 確立されたSAは,SADに登録され,これ以降のIPsec通信で使用されます。

※ SAD(Security Association Database)…SAを識別するための情報を登録するデータベース

広告

IPsec通信とは(モードと用途)

トンネルモードとは(ネットワーク間 VPN)

 トンネルモードの場合は,LAN間を接続します。IPパケット全体をカプセル化して(新規にIPヘッダーを付け)インターネット上をトンネリングします。

※ カプセル化を解除しないと,元のIPアドレスやポート番号は分からない。そのため,LAN間をVPN装置を使用して接続する

トンネルモードの説明画像

トランスポートモードとは(ホスト間通信)

 トランスポートモードの場合は,端末間を接続します。IPパケットのペイロードのみを暗号化や認証しトンネリングします。

※ ペイロード…ヘッダーを除いたデータ本体のこと

トランスポートモードに関する説明画像

広告

AH(Authentication Header)とは(認証と完全性検証)

 AHは,送信元の認証やデータの完全性(改ざんされていないこと)の機能を提供します(暗号化の機能は提供されません)。

パケット構造(認証ヘッダーの位置)

 AHの場合,認証ヘッダーは,IPヘッダーの後ろに付きます。

AHのパケット構造に関する説明画像

ESP(Encapsulated Security Payload)とは(暗号化と認証)

 ESPは,データの暗号化と,送信元の認証,データの完全性(データが改ざんされていないこと)の機能を提供します。

※ 暗号化と認証のどちらか,または,両方を使用することができる(どちらか一方は使用しなければならない)

パケット構造(ヘッダーとトレーラ)

 ESPの場合,ESPヘッダーは,IPヘッダーの後ろに付きます。また,ペイロードの後ろに,ESPトレーラとESP認証データも付きます。

ESPのパケット構造に関する説明画像

IPsecの課題(導入と運用上の注意)

 IPsecを利用すると,低コストで比較的安全なネットワークを実現できますが,次のような課題もあります。

  • IPsec対応のVPN装置(ルーターなど)やVPNソフトウェアを導入する必要がある
  • VPN装置がインターネットから攻撃可能な位置に配置されているため,完全な閉域性は確保できない
  • 通信速度は保証されない
  • 経路の途中に,アドレス変換(NATやNAPT)を行う機器がある場合には利用できない ⇒ ネットワーク間の接続に適している

※ VPN装置がNAT機能を備えている場合は,問題が起こりにくい

※ AHの場合,トンネルモードでVPN装置がNAT装置の内側に設置されている場合に問題が発生することがある。⇒ IPヘッダーも認証対象になるため,NAT装置によるIPアドレスの変換が改ざんとみなされる

※ ESPの場合は,どちらのモードの場合でもTCPヘッダーが暗号化されるため,ポート番号が識別できない。また,トンネルモードの場合は,IPヘッダーがカプセル化されるため,IPアドレスを識別することができない

まとめ

 今回は,IPsecについてシンプルにまとめてみました。IPsecは,IKEによる鍵交換を行い,AHやESPを利用して認証や暗号化を実現することで,IPネットワーク上で安全な通信を可能にする技術です。また,トンネルモードやトランスポートモードなどの通信方式を使い分けることで,VPNなどの安全なネットワーク接続を実現できます。IPsecは通信の流れが少し複雑ですが,SAやIKEの役割,AHとESPの違い,トンネルモードとトランスポートモードの特徴などを整理して理解することが重要です。ネットワークセキュリティの基礎となる技術なので,繰り返し確認して理解を深めましょう。

 理解が進んだら,基本情報技術者試験の過去問題等にもチャレンジしてみてください。