openconnect 无法使用 -g 连接到 Anyconnect VPN 组

openconnect 无法使用 -g 连接到 Anyconnect VPN 组

我正在使用openconnect连接到 VPN。以 身份启动客户端时sudo openconnect -v -u anaphory vpn-gw1.somewhere.net,输入组和密码后即可连接。

# openconnect -v -u anaphory vpn-gw1.somewhere.net
[…]
XML POST enabled
Please enter your username and password.
GROUP: [Anyconnect-VPN|CLUSTER-DLCE|Clientless]:CLUSTER-DLCE
POST https://vpn-gw1.somewhere.net
Got HTTP response: HTTP/1.1 200 OK
Content-Type: text/html; charset=utf-8
[…]

但是,当我在命令行上指定相同的组名时,连接失败并显示“无效的主机条目”消息。

# openconnect -v -g CLUSTER-DLCE -u anaphory vpn-gw1.somewhere.net
[…]
XML POST enabled
Please enter your username and password.
Password:XML POST enabled
Invalid host entry. Please re-enter.
Failed to obtain WebVPN cookie

我是否需要对组名进行一些神奇的操作,或者我如何找到使其发挥作用的方法?

答案1

尝试--authgroup代替-g

openconnect -v --authgroup CLUSTER-DLCE -u anaphory vpn-gw1.somewhere.net

问候

答案2

事实上,用户2000606给出的“不回答”却导致了成功。

发送到 ASA 的 HTTP 消息会有所不同,具体取决于您如何选择组,并且 VPN 网关可能会对此挑剔。

这是我的基本呼吁openconnect

openconnect -v --printcookie --dump-http-traffic \
 --passwd-on-stdin \
 -u johnsmith \
 vpn.ssl.mydomain.tld 

发出此命令并在提示后提供我想要的 VPN 组将导致以下 HTTP 聊天(我仅包含 XML 文档中看似相关的部分):

[Certificate error, I tell openconnect to continue]
Me >> ASA:  POST / HTTP/1.1
            [...]<group-access>https://vpn.ssl.mydomain.tld</group-access>
ASA << ME:  HTTP/1.1 200 OK
Me >> ASA:  POST / HTTP/1.1
            [...]<group-access>https://vpn.ssl.mydomain.tld/</group-access><group-select>AnyConnect-MyGroup</group-select>
ASA << ME:  HTTP/1.1 200 OK
Me >> ASA:  POST / HTTP/1.1
            [...]<auth><username>johnsmith</username><password>secret</password></auth><group-select>AnyConnect-MyGroup</group-select>
ASA << ME:  HTTP/1.1 200 OK

请注意group-select-groups 和所有请求都是 。通过提供对 的基本调用POST / HTTP/1.1可实现相同的结果。--authgroup AnyConnect-MyGroupopenconnect

当使用-g AnyConnect-MyGroup而不是 时, --authgroup AnyConnect-MyGroup会发生以下情况:

Me >> ASA:  POST /AnyConnect-MyGroup HTTP/1.1
            [...]<group-access>https://vpn.ssl.mydomain.tld/AnyConnect-MyGroup</group-access>
ASA << ME:  HTTP/1.1 200 OK
            [...] <error id="91" param1="" param2="">Invalid host entry. Please re-enter.</error>

请注意,这次我们没有告诉服务器,而只是将我们的组名和 HTTP 请求group-select挤进去。将组名添加到网关地址时也会产生相同的负面结果,即使用作为基本调用的最后一行。group-accessvpn.ssl.mydomain.tld/AnyConnect-MyGroupopenconnect

相关内容