コンテンツにスキップ

IPsecの全体像

IPsec は、IP パケットに暗号化・完全性確認・送信元認証などの保護を加えるためのプロトコル群。

IPsec は VPN そのものではない。IP レベルの通信を保護する仕組みであり、その代表的な用途として拠点間 VPN やリモートアクセス VPN がある。

TLS や SSH が主にアプリケーション単位の通信を守るのに対して、IPsec は IP パケットを対象にする。そのため、アプリケーション側が IPsec を意識していなくても、ネットワーク側の設定で通信を保護できる。


IPsec は主に次の機能を提供する。

機能 内容
暗号化 パケットの中身を第三者から読めないようにする
完全性確認 通信内容が途中で改ざんされていないことを確認する
送信元認証 その SA の鍵を持つ正しい相手から来たパケットか確認する
リプレイ防止 過去に送られた正しいパケットの再送攻撃を検出する

IPsec の認証は、文脈によって意味が変わる。

種類 役割
IKE の相手認証 通信開始前に、接続相手が想定した相手か確認する
ESP / AH の認証 各パケットが改ざんされておらず、正しい SA に基づくものか確認する

要素 役割
ESP 暗号化、完全性確認、送信元認証、リプレイ防止を行う
AH 暗号化せず、完全性確認と送信元認証を行う
IKE 相手認証、鍵交換、暗号方式の合意、SA の作成を行う
SA 通信をどう保護するかを表す取り決め

現在の IPsec では、暗号化もできる ESP がよく使われる。AH は暗号化を行わず、IP ヘッダの一部も保護対象にするため、NAT と相性が悪い。


項目 IPsec TLS / SSH
主な対象 IP パケット アプリケーションの通信
動く層 ネットワーク層寄り トランスポート層より上
アプリ側の対応 基本的に不要 アプリケーション側が対応する
代表例 拠点間 VPN、リモートアクセス VPN HTTPS、SSHログイン

HTTPS が普及していても、IPsec が不要になるわけではない。HTTPS は Web アプリケーションの通信を保護する。IPsec は、アプリケーションを問わず、特定のネットワーク間やホスト間の IP 通信をまとめて保護する。


誤解 実際
IPsec は VPN そのものである IP 通信を保護する仕組みであり、VPN は代表的な用途
IPsec はトランスポート層で動く IP パケットを扱うため、ネットワーク層寄りの仕組み
ESP は暗号化だけをする 暗号化に加えて、完全性確認、送信元認証、リプレイ防止もできる
AH は ESP の古い版である AH は暗号化しない認証用の仕組みであり、役割が違う
SA は仮想的な通信経路である SA は通信をどう保護するかを表す取り決め