II-19-1. IPsecによるVPN通信

VPNとは何か、IPsecの機能や仕組みについて説明し、IPsecを利用したVPNの構築に関する手順や機能を解説する。また暗号化鍵の指定やAuthentication Header (AH)とEncapsulating Security Payload (ESP)といった二つのプロトコルの違いなど、IPsecによるVPNの実現に必要な項目について説明する。

【学習の要点】

* VPNとは公衆網であるコンピュータネットワークを利用して、ポイント間を認証化や暗号化手法で結ぶ仮想専用ネットワークである。

* VPNを実現する手段として主にIPsecを用いたIPsec-VPNとSSLを用いたSSL-VPNがある。

* IPSecではIPヘッダの後ろにアタッチする拡張ヘッダを利用して暗号化機能と認証機能を実装する。

* 暗号化データ+暗号化ヘッダ+IPヘッダをESP(Encapsulated Security Payload)という。

* IPsecを用いたVPNには、アウトサイドトンネル/インサイドトンネルという二つのタイプがある。

図II-19-1. IPsecによるVPN通信

 

【解説】

1) VPNとは

* VPNとは公衆網であるコンピュータネットワークを利用して、ポイント間を認証化や暗号化手法で結ぶ仮想専用ネットワークである。VPNを用いてポイント間を接続すれば、同じLAN環境を共有することができる。

* VPNを実現する手段として主にIPsecを用いたIPsec-VPNとSSLを用いたSSL-VPNがある。

2) IPsecの仕組み

* IPSecではIPヘッダの後ろにアタッチする拡張ヘッダを利用して暗号化機能と認証機能を実装する。つまり拡張ヘッダにより暗号情報、認証情報をやりとりする。

* 暗号化/認証化には暗号鍵、認証鍵が必要であるが、これはホスト間で予め設定されている必要がある。

* 暗号化・認証情報の作成手順は次の通り

- まずデータ+IPヘッダがあるとする。

- データを暗号鍵で暗号化する。これをデータ部に戻した後に、暗号化されたことを明示する暗号化ヘッダを、データ部とIPヘッダの間に挿入する。この暗号化データ+暗号化ヘッダ+IPヘッダをESP(Encapsulated Security Payload)という。

- ESPに対して認証鍵をもちいて認証ヘッダを作成する。これをAH(Authentication Header)という。

- 上記のAHを、暗号化ヘッダとIPヘッダの間に挿入する。この暗号化データ+暗号化ヘッダ+AH+IPヘッダの一体となったパケットを通信するホストに送信する。

* 復号化・認証情報のチェックの仕組みは次の通り

- 送信元から受け取ったパケットからAHを除いた暗号化データ+暗号化ヘッダ+IPヘッダについて、認証鍵をもちいて新たに認証ヘッダを作成する。この新たに作成した認証ヘッダとAHを比較し、改竄の有無をチェックする。

- ESPからIPヘッダと暗号化ヘッダを取り除き、暗号化ヘッダの情報に基づき、暗号鍵を用いて復号化する。

3) IPsec を用いたVPNの実現

* IPsecを用いてVPNを通信する場合、VNPトンネルをファイアウォールの外に確立するか、それともファイアウォールの中から確立するかで、アウトサイドトンネル/インサイドトンネルという二つのタイプがある。

* インサイドトンネルの場合、あたかも同じLAN環境になったかのように振る舞うことができ、LANで利用できるアプリケーションはすべて利用できる。通常同じ会社の異なる拠点間を接続する場合に用いる。

* アウトサイトトンネルの場合、トンネルを通じた通信がファイアウォールに阻まれるために、ファイアウォールが許可するアプリケーションの通信だけが利用できる。取引先企業との接続を行う場合はこの接続形態になる。

OSS Course Naviのコンテンツは IPA OSS モデルカリキュラムを基としています。