IPSecは苦手です。そうはいっても逃げてばかりもいられないので、頑張ってトラブルシューティングして繋がるようにしていきます。
トラブルシューティングに入る前に、基本的な情報をチェックリストに整理すると解決が早いことが多いです。本稿のお題は、そのテンプレ!
#トラブルシューティング前チェックリスト
-
IKEv1かIKEv2か?
IKEv1 IKEv2 その他 -
IKEv1の場合、MainモードかAggressiveモードか?
Mainモード Aggressiveモード
- IKEv2には、この二択はありません。
- ここで「Quickモードです」と回答しないように!Quickモードはフェーズ2の話であって、ここには出てきません。
-
クライアント・サーバ間の認証方式は?
事前共有鍵 (PSK) X.509証明書 その他
- PSKの中身は秘密なので、心の中で唱えて下さい。
-
クライアントのIPアドレスは?
動的 固定 -
サーバのIPアドレスは?
動的 固定 -
XAUTHを使っているか?
使っていない 使っている:ユーザID
- ユーザIDに対応するパスワードは、心の中で唱えて下さい。
-
ESPかAHか?
ESP AH
- AHは、暗号化せずにメッセージ認証(偽造、改ざんを見破る)だけを行うモードです。AHを使うことは少なく、ほとんどの場合はESPです。
-
カプセル化はトランスポートモードかトンネルモードか?
トランスポートモード トンネルモード
- L2TPやGREを併用している場合は、トランスポートモードが普通です。
-
NATトラバーサルか?
NATトラバーサルである NATトラバーサルではない
- クライアントの属するLANがNATルータで外と繋がっている場合、サーバがNAT機能つきファイアーウォールの奥にある場合など、いろいろなパターンがありますが、とにかくクライアントとサーバの間にNATがあれば「NATトラバーサル」のほうを選択します。
-
何かトンネルプロトコルを併用しているか?
L2TP GRE その他 特にない
以上!
いやー、めんどくさいですね。このフォームを全部埋めないとトラブルシューティング作業に入れないのかと言うと、私の経験上、はい、まず入れません。むしろ、この区分では大まか過ぎるかも知れません。それがIPSecです。
#技術者を逆なでする数々の仕様
- PSKを使うケースが多いかと思いますが、家庭用Wi-FiルータのPSKみたいに全体で一つのキー値を共有する形なら比較的シンプルに管理できます。しかし、クライアントごとに個別のPSKを割り当てようとすると、複雑さが一気に増大します。
- WindowsのIPSecにはAggressiveモードがありません(参考:How IPSec Works / Google翻訳)。
- WindowsでIPSec NATトラバーサルを使う場合、レジストリを手動で書き換える必要があります(参考:Windows Vista および Windows Server 2008 で NAT-T デバイスの背後に L2TP/IPsec サーバーを構成する方法( 原文 / Microsoft翻訳 ))。
- 上記以外にも、OSごとに一部の機能がなかったりバグが多かったりということはよくあります。IPsec 認証方式の各 OS の対応状況が参考になります。
本稿はここまで!これはあくまで事前準備で、ここから先がトラブルシューティングの本題なのですが、IPSecのトラブルシューティングは、非常に広範囲で複雑な話になっていくので、一本の記事では書ききれません。気が向いたら別記事を書きます。。。
#参考文献
Internet Key Exchange (IKE) Attributes
http://www.iana.org/assignments/ipsec-registry/ipsec-registry.xhtml
Internet Key Exchange Version 2 (IKEv2) Parameters
http://www.iana.org/assignments/ikev2-parameters/ikev2-parameters.xhtml
"Magic Numbers" for ISAKMP Protocol
http://www.iana.org/assignments/isakmp-registry/isakmp-registry.xhtml
Cryptographic Suites for IKEv1, IKEv2, and IPsec
http://www.iana.org/assignments/crypto-suites/crypto-suites.xhtml
S. Frankel, et. al (2011)
IP Security (IPsec) and Internet Key Exchange (IKE) Document Roadmap
https://tools.ietf.org/html/rfc6071 (Google翻訳)