FortigateとWindows10のIPsecにハマった話

Fortigate 100EにWindows10からL2TP/IPsec(IKEv1・事前共有鍵)で接続しようとしてハマったのでメモ。

ファームはv5.4.4.build7650(GA)で、上げられないのは大人の事情ということで。
このファーム、GUIの挙動が怪しく、ChromeやEdgeでGUI操作するとしょっちゅう固まり、IEだとなんとか動くという・・

でIPsecの設定ですが、
カスタムでやって、思いつく限りの手を尽くしても接続確立できませんでした。

結局、IPsecウィザード「FortiClient VPN for OS X,Windows,and Android」からトンネルを作成して、Windows10のVPNクライアントではなく、FortiClientを使って接続することができました。

その時は、結局なにが原因で繋がらなかったのかわからなかったのですが、
あとでWireSharkで見ると、Fortiの設定はaggressiveなのですが、Windows10はmain modeで接続しようとしているんですね、
で、Windows10のVPNクライアントではaggressive modeの設定方法が無く、詰んでいた事が判明。

Microsoft Windows 10 IPsec VPN Client

There is no way to configure Windows to use IKEv1 aggressive mode. Only main mode is supported.

当然、カスタムで頑張っていたときにaggressive modeとmain modeも試していたんですが、GUIでmain modeにすると、事前共有鍵の入力ができなくなるのです。
GUIで設定できないのでCLIで無理やり入れていましたが、これが有効になってなかったんだろうか・・

configをかなり汚してしまったのでちょっと確証はないけど、一応GUIだけでも設定はできたのかも、知らんけど。

WireSharkを持っていっていなかったのは失策でした。
あとFortiClientは細かくパラメータを設定できるので、IPsecのデバッグに良いですね。

IPsecの話ではないけど、このファーム、アドレス作成で地域を選ぶと、「Invalid number.」というエラーが出て登録できなかったりします。
別のファームでは設定できるので、ファームのバグかなと。

これはCLIで

edit "Geo_JP"
 set type geography
 set country "JP"
next

で設定可能です。