IPsec

IPsecとは

IPsec(Internet Protocol Security)とは、パケットを暗号化してインターネットを安全に通信する仕組みです。

実行時に、セキュリティアソシエーション(SA)を作成することによって、IPsec セッションを生成します。SA は通信セッションとして扱われ、接続に関するあらゆる構成とステータス情報を記録しています。SA は単方向の接続単位で扱われ、双方向の場合にはSAは2本あります。

また、AHとESPの2つを一つのSAで利用することはありません。よって、AHとESPの両方を利用したい場合には、それぞれのSAが必要です。

そして、通信フィルタリングはSA単位で行います。これにより、一つのサービスに対して一つのSAというように管理母体を分けることが可能になっています。

コンポーネント

IPsecでは、途中でデータが壊れないようにAHとESPという2つコンポーネントがあります。

  • AH(Authentication Header) データが壊れないようにはできる(完全性あり)が、データ内容が丸見え(機密性なし)。
  • ESP(Encapsulated Security Payload) データを壊れない(完全性あり)、かつ暗号化(機密性あり)する。

ESP は AH なしで使用されることもありますが、AH が ESP なしで使用されることはまずありません。

接続構成

IPsecはパケットのどこまで暗号化するのかで2つに分けられます。

トンネルモード

ゲートウェイと呼ばれる固定的な口を作成し、パケット全体を暗号化します。

トランスポートモード

データのみ暗号化します。その代わり、本来データに使うはずの領域をちょっと借りて通信要件を送り合います。

暗号強度が強いほうが良いですが、その分融通が利かなくなってしまうのはよくある話です。

モバイルユーザがIPsecを使うときは、トランスポートモードを使います。