Android は自宅の IPsec VPN につながるのに Windows はつながらない理由
スマートフォンは接続でき、ノート PC はできない。原因はパスワードではなく、Windows が一度も搭載しなかった IKEv1 XAUTH プロファイルにある。
スマートフォンは文句も言わずにルーターの VPN に入るのに、同じ Wi-Fi 上のノート PC は入れない。資格情報もサーバーも時刻も同じだ。違いはパスワードではなくプロトコル対応にある。ルーターは、一方の OS が実装し、もう一方が決して持たなかったプロファイルを公開しているのだ。
まずプロファイルを特定し、次に各クライアントが実際に話す内容と比べる。
一つのメニュー、三つのプロトコル
一つの IPsec 見出しの下に、家庭用ファームウェアはまったく異なる三つのトンネルを隠せます。一つ目は XAUTH 付き IKEv1 で、共有グループ秘密の上にユーザー名とパスワードを重ねます。二つ目は L2TP/IPsec で、PPP が共有鍵で保護された IPsec トランスポートの内側を流れます。三つ目は IKEv2 で、証明書または EAP で認証します。
ラベルではなく項目を読みます。グループ秘密とユーザー一覧があれば IKEv1 XAUTH です。事前共有鍵と PPP アカウントがあれば L2TP/IPsec です。グループ秘密のないサーバー証明書なら IKEv2 です。
スマートフォンとノート PC の対応差
Android は IKEv1 XAUTH PSK クライアントを内蔵しており、だからこそ他に何も出さないルーター相手にスマートフォンは成功します。Windows は違います。標準クライアントは L2TP/IPsec と IKEv2 を扱い、有効にする IKEv1 XAUTH の項目はありません。秘密を入れ直しても無駄です。欠けているのは資格情報ではなくプロトコルだからです。
Apple 側は動く標的です。新しい macOS と iOS は IKEv2 に寄り、古い Cisco 風プロファイルは一部のビルドで生き残り、更新で先月まで動いていたものが外れたり厳しくなったりします。昨日はつながり今日はつながらない Mac が、ルーターを変えていないのに起きるのは、たいていこれです。
正しいプロファイルを壊す二つの設定
Synology の L2TP/IPsec 画面には Enable SHA2-256 compatible mode (96 bit) というチェックボックスがあります。iOS 14 と macOS Big Sur 以降の Apple クライアントはこの切り詰めたモードを拒むため、Apple 向けには外す必要があります。入れたままだとトンネルは認証してから落ち、資格情報が悪いように見えて実際は違います。ベンダーはこの切り替えを文書化しており、OS の更新がこれの重要性に気づく契機になります。
Windows は証明書を二つの保管場所に分けて持ち、IKEv2 はマシンの保管場所だけを読みます。クライアント証明書を秘密鍵ごとコンピューターのアカウントにインポートしてください。自分のユーザーアカウントに置いた証明書は管理コンソールに見えても IKEv2 サービスには決して届きません。EAP-TLS だけはユーザー証明書が使えますが、署名した CA はマシンに信頼されている必要があります。ここを誤ると、証明書がないという案内ではなく認証失敗として現れます。
ルーターをそのままにする場合
XAUTH PSK しか話さないルーターでは三つの道が残ります。ベンダーのクライアント、いまもプロファイルを実装する第三者クライアント、あるいはトンネルの終端を IKEv2 を話す何かへ移すことです。たとえば AVM は自社ルーター向けに Windows クライアントソフトと書き出した設定ファイルを公開しています。この道はサポートされており、すべてのノート PC にベンダーのツールを入れることになります。
ノート PC が作り直せる自分のものではないとき、見た目よりサポートが重要です。
セキュリティの代償も量りましょう。グループ秘密は一つで全ユーザーを覆うため、持っている者はサーバーのふりをして、クライアントが差し出すユーザー名とパスワードを奪えます。証明書付き IKEv2 が使えるなら、その移行はクライアント側の回避策より価値があります。
外側から内側へ診断する
まずスマートフォンで一度つながるセッションを取り、ノート PC を登場させる前にサーバー側を証明します。次にルーターの書き出したプロファイルをそのまま取り込み、ルーターの状態画面ではなくクライアントのログを読みます。ログに送信提案が出ていなければ、ノート PC は応答側に届いていません。提案を交換してから失敗するなら、食い違いはアルゴリズム、ID、資格情報のいずれかです。
つながるスマートフォンのプロファイルを対照として残します。ファームウェア更新後にノート PC だけ壊れたなら、サーバー側は以前どおりです。両方壊れたなら、どのクライアントに触る前に証明書かリスナーを見ます。