→VPNまとめ
→IPSecで使うプロトコル
→暗号化
- 暗号化をレイヤ3=ネットワーク層=IP(Internet Protocol)プロトコルのレベルで行う仕組み
- IP層レベルで自動的に暗号化された通信を行うので、上位のアプリケーションでは暗号化のことを特別に意識する必要がない。
- IETF(Internet Engineering Task Force)による暗号化通信方式の標準規格
- 現在の主流暗号化技術である
IPSecによるVPNの問題点†
ファイアーウォールとの併用†
- 暗号化されている通信であるため、やりとりしているデータの中味をファイアウォールなどでチェックできない。
- VPNを介して不正プログラムが侵入してしまう可能性
NAT,IPマスカレードとの併用の問題†
- NATとVPNは通常のままでは併用できない。VPNパススルーという技術を使うと解決できる
- 制約:パケット内のデータが暗号化されるため、ポート番号がわからなくなるのでNAPTと相性が悪い。IPSecとNAPTを同時に行うにはルータがVPNパススルー機能に対応するか、NATトラバーサルを行う必要がある。
- NATトラバーサルはIPsecの拡張機能。VPNパススルーはIPsecに限った話ではない。
アクセス制御†
- VPN装置の背後に別途ファイアウォール配置して、再度アクセスコントロールを行う場合もあるが、
- 運用面などを考えると現実的ではない。
2つの動作モード†
- トランスポート・モード
IPパケットで運ぶデータ部分のみを暗号化し、これにあて先などを指定したIPへッダを付けて送信
- トンネル・モード
ほかのホストからいったん受信したIPへッダとデータ部分を合わせたものをまとめて暗号化したうえで、ゲートウェイにて新たにIPへッダを再度つけ直して送信を行う。パケットの真の送り先まで暗号化される。
プロトコル†
IPSecでは3種類のプロトコルを使用:IKE, AH, ESP
- IPSecは、暗号化方式として共有鍵暗号方式が採用されている
- 暗号化に使うアルゴリズムは複数から選択可
種類 | 実装 |
DES-CBC | 実装が必須とされている |
3DES-CBC | 実装はオプション(多くのIPSec製品が実装) |
CAST-128 | 実装はオプション |
RC-5 | 実装はオプション |
IDEA | 実装はオプション |
Blowfish | 実装はオプション |
SA(Security Association)†
- 一連のネゴシエーションの結果として、お互いの間で得られた暗号化アルゴリズムやどんな暗号鍵を使うか、に関する合意。
- VPNによってできる接続をSAと呼ぶイメージ
SPI(Security Pointer Index)†
- SAの確定と同時に、SAと関連付けされたSPIと呼ばれる32ビットの整数値が割り当てられる
- 暗号化通信で各パケット中(ESPヘッダ内)に挿入され、パケット内の通信内容がどのような 暗号化アルゴリズムで暗号化されたのか、どの暗号鍵を使うのかといったことを示すガイドとなる。
- 同時に複数の相手と通信する場合、相手によってSPIが変わる
参考URL†