IPsec
ネットワーク層で暗号化を実現するプロトコル。IPv6では実装必須。IETFが策定。
- ○それより上のすべてを透過的にセキュアにできる。
- ×専用ソフトのインストールなどが必要で、クライアント/サーバー間通信で使うのは面倒。拠点間接続向き。
機能は次の通り。
- データ暗号化
- メッセージ認証
- 安全な鍵交換
- クライアント/サーバー認証 (ただし機器のレベルでのみ。ユーザー認証といったたぐいではない。)
動作モード
トンネルモードとトランスポートモードがある。
プロトコル
次の3つのプロトコルが中核をなす。
- IKE(Internet Key Exchange)
- 安全な鍵交換プロトコル。
- ESP(Encapsulating Security Payload)
- 暗号化とメッセージ認証を実現
- AH(Authentication Header)
- メッセージ認証のみ(暗号化が使えない国向け)
ESP
暗号化とメッセージ認証機能を提供するプロトコル。パケットを以下の通り変換してやりとりする。
AH
メッセージ認証機能を提供するプロトコル。暗号化機能は持たない。メッセージ認証の範囲がESPと異なり、AHではAH自体を含むパケットすべてが認証対象。(ESPのトランスポートモードではIPヘッダは認証範囲に含まれない)
弱点と対策
NAT/NAPT
ESPでは、NATはいけるがNAPTは無理(ポートがTCP/UDPヘッダで認証対象であるため。)。AHはどちらも無理。
NAT | NAPT | |
---|---|---|
ESP トンネル | ○ | × |
ESP トランスポート | ○ | × |
AH トンネル | × | × |
AH トランスポート | × | × |
動的なIPが割り振られる機器の認証
IPアドレスでの認証が一般的であるため、動的にIPアドレスが割り当てられる機器の認証には注意が必要。Pre Shared Key とかを使って認証する手がある。
参考:
- Wikipedia - IPSec
- @IT - IT管理者のためのIPSec講座 ESPパケットの詳細はこちら。