FortiClient - Reconnect without reauth broken?
I'm trying to get FortiClient to re-connect without re-authenticating after short network outages as described in this article:
I've tried various versions of FortiClient 7.0.x on Windows but they all enter loop where they tries to re-connect but fails every time. MacOS FCT 7.0.x clients doesn't even seem to care about the tunnel-connect-without-reauth option.
I've tried all these combinations without success:
Win10 FCT v7.0.5 ZTNA -> FortiOS 6.4.10 SAML: Reconnect / Disconncect loop
Win10 FCT v7.0.5 ZTNA -> FortiOS 7.0.8 SAML: Reconnect / Disconncect loop
Win2019 FCT v7.0.7 ZTNA -> FortiOS 6.4.10 SAML: Reconnect / Disconncect loop
Win2019 FCT v7.0.7 ZTNA -> FortiOS 7.0.8 SAML: Reconnect / Disconncect loop
Win2019 FCT v7.0.7 ZTNA -> FortiOS 7.2.2 SAML: Reconnect / Disconncect loop
Win2019 FCT v7.0.7 ZTNA -> FortiOS 7.2.2 Local FW User: Reconnect / Disconncect loop
MacOS 12.3.1 FCT v7.0.6 ZTNA -> FortiOS 6.4.10 SAML: No reconnect
MacOS 12.3.1 FCT v7.0.6 ZTNA -> FortiOS 7.0.8 SAML: No reconnect
I just got hold of a pre-release version of FortiClient 7.2.0 for MacOS that actually works!
With the "broken" Windows FortiClient 7.0.x connecting to FortiOS 7.2.2 shows the following debug logs when attempting to reconnect:
[199:root:6b]allocSSLConn:306 sconn 0x7f45720e5600 (0:root) [199:root:6b]SSL state:before SSL initialization (185.40.184.19) [199:root:6b]got SNI server name: rmsit-vpn.it-total.se realm (null) <cut> [199:root:6b]req: /remote/sslvpn-tunnel2?dns0=100.100.16.1 [199:root:6b]sslvpn_tunnel2_handler,59, Calling rmt_conn_access_ex. [199:root:6b]deconstruct_session_id:716 decode session id ok, user=[msntest@rmsit.se], group=[rmsit-vpn],authserver=[azure-rmsit],portal=[full-access],host[185.40.184.19],realm=[],csrf_token=[9D175BC042172724028322A292D9CAF],idx=0,auth=256,sid=423b56a6,login=1668114751,access=1668114751,saml_logout_url=yes,pip=no,grp_info=[SeTjih],rmt_grp_info=[XdLLRf] [199:root:6b]normal tunnel2 request received. [199:root:6b]sslvpn_tunnel2_handler,166, fct_uuid = 0DAE0661B838411A8B8294957F45C7B7 [199:root:6b]sslvpn_tunnel2_handler,173, Calling tunnel2. [199:root:6b]tunnel2_enter:1155 0x7f45720e5600:0x7f4571483000 sslvpn user[msntest@rmsit.se],type 256,logintime 0 vd 0 vrf 0 [199:root:6b]tunnel2_enter:1171 no more IP address available. [199:root:6b]enter() returned task error. [199:root:6b]Destroy sconn 0x7f45720e5600, connSize=1. (root) [199:root:6b]fsv_tunnel2_state_cleanup:1676 0x7f45720e5600::0x7f4571483000 [199:root:6b]fsv_disassociate_fd_to_ipaddr:1961 deassociate 0.0.0.0 from tun (ssl.root:-1) [199:root:6b]SSL state:warning close notify (185.40.184.19)
With the working 7.2.0 FortiClient the debug log shows:
[199:root:33f]allocSSLConn:306 sconn 0x7f45720e6b00 (0:root) [199:root:33f]SSL state:before SSL initialization (155.4.221.225) [199:root:33f]got SNI server name: rmsit-vpn.it-total.se realm (null) <cut> [199:root:33f]req: /remote/sslvpn-tunnel2?uuid=19BAD313AEC1 [199:root:33f]sslvpn_tunnel2_handler,59, Calling rmt_conn_access_ex. [199:root:33f]deconstruct_session_id:716 decode session id ok, user=[test], group=[],authserver=[],portal=[full-access],host[155.4.221.225],realm=[test],csrf_token=[7C111855E54DAE58ABFFB1B2C1FCE3],idx=1,auth=1,sid=4ec2f098,login=1668184814,access=1668184814,saml_logout_url=no,pip=155.4.221.225,grp_info=[68AKth],rmt_grp_info=[] [199:root:33f]normal tunnel2 request received. [199:root:33f]sslvpn_tunnel2_handler,166, fct_uuid = 19BAD313AEC156F59DD19B60B59705C1 [199:root:33f]sslvpn_tunnel2_handler,173, Calling tunnel2. [199:root:33f]tunnel2_enter:1155 0x7f45720e6b00:0x7f4571447000 sslvpn user[test],type 1,logintime 0 vd 0 vrf 0 [199:root:33f]tun dev (ssl.root) opened (34) [199:root:33f]Will add auth policy for policy 7 for user test: [199:root:33f]Add auth logon for user test:, matched group number 1 [199:root:33f]fsv_associate_fd_to_ipaddr:1930 associate 10.212.134.100 to tun (ssl.root:34) [199:root:33f]proxy arp: scanning 9 interfaces for IP 10.212.134.100 [199:root:33f]Cannot determine ethernet address for proxy ARP [199:root:33c]rmt_check_conn_apsession:1794 delete connection 0x7f45720e7900 w/ app session 1 [199:root:33c]Destroy sconn 0x7f45720e7900, connSize=1. (root) [199:root:33c]fsv_tunnel2_state_cleanup:1676 0x7f45720e7900::0x7f4571427000 [199:root:33c]fsv_disassociate_fd_to_ipaddr:1961 deassociate 10.212.134.101 from tun (ssl.root:23) [199:root:33c]SSL state:warning close notify (90.129.202.118)
The main difference I can see is the argument used on the req: /remote/sslvpn-tunnel2 request.
Anyone who knows more about this issue? Any working Windows FortiClient versions (non-beta)?
