OpenConnect 无法连接到 VPN 服务器:永久刷新 wait.html

OpenConnect 无法连接到 VPN 服务器:永久刷新 wait.html

过去我可以连接到某个 Cisco VPN 服务器。我已经外出旅行了 7 周,现在我回到家了,但再也无法连接到 VPN 服务器。今天,服务器突然要求我运行“Cisco Secure Desktop”木马,我已将 OpenConnect 配置为执行此操作(通过 GUI 对话框和命令行--csd-user选项openconnect),但我仍然无法使 VPN 连接正常工作。

VPN 连接日志以这四行反复重复的内容结束:

GET https://vpn.server.com/+CSCOE+/sdesktop/wait.html
SSL negotiation with vpn.server.com
Connected to HTTPS on vpn.server.com
Refreshing +CSCOE+/sdesktop/wait.html after 1 second...

您是否知道发生了什么事或我该如何解决这个问题?

您是否认为问题出在 VPN 服务器端配置更改上?也许是“Cisco Secure Desctop”脚本?当我能够连接时,VPN 服务器从未要求我运行“Cisco Secure Desktop”脚本。— 或者您认为我的操作系统已将 OpenConnect 升级到某种不兼容的版本?

“正在刷新.../sdesktop/wait.html”,那是什么?为什么?还有+CSCOE+, 听起来怪怪的。

我的操作系统:Linux Mint 17。OpenConnect 版本 v5.02。其他人可以连接到 VPN 服务器 — 但他们使用的是 Mac 或 Windows,而不是 Linux。

以下是完整的 OpenConnect 日志:

POST https://vpn.server.com/
Attempting to connect to server 111.222.333.444:443
Using client certificate 'My-Full-Name'
Adding supporting CA 'TC TrustCenter Class 2 L1 CA XI'
SSL negotiation with vpn.server.com
Connected to HTTPS on vpn.server.com
Got HTTP response: HTTP/1.0 302 Object Moved
GET https://vpn.server.com/
Attempting to connect to server 111.222.333.444:443
SSL negotiation with vpn.server.com
Connected to HTTPS on vpn.server.com
Got HTTP response: HTTP/1.0 302 Object Moved
GET https://vpn.server.com/+webvpn+/index.html
SSL negotiation with vpn.server.com
Connected to HTTPS on vpn.server.com
GET https://vpn.server.com/CACHE/sdesktop/install/binaries/sfinst
GET https://vpn.server.com/+CSCOE+/sdesktop/wait.html
Refreshing +CSCOE+/sdesktop/wait.html after 1 second...
GET https://vpn.server.com/+CSCOE+/sdesktop/wait.html
SSL negotiation with vpn.server.com
Connected to HTTPS on vpn.server.com
Refreshing +CSCOE+/sdesktop/wait.html after 1 second...
GET https://vpn.server.com/+CSCOE+/sdesktop/wait.html
SSL negotiation with vpn.server.com
Connected to HTTPS on vpn.server.com
Refreshing +CSCOE+/sdesktop/wait.html after 1 second...
GET https://vpn.server.com/+CSCOE+/sdesktop/wait.html
SSL negotiation with vpn.server.com
Connected to HTTPS on vpn.server.com
Refreshing +CSCOE+/sdesktop/wait.html after 1 second...
GET https://vpn.server.com/+CSCOE+/sdesktop/wait.html
SSL negotiation with vpn.server.com
Connected to HTTPS on vpn.server.com
Refreshing +CSCOE+/sdesktop/wait.html after 1 second...
(... continues forever)

我读这里我可以通过选项将“Cisco Secure Desktop”脚本包装在shell脚本中--csd-wrapper;建议的脚本如下所示:

#!/bin/bash -x
exec 2>&1 > /dev/null
CSD_BINARY="$1"
shift
$CSD_BINARY "$@"

但这并没有任何效果。

我也--no-xmlpost按照建议测试了该标志这里, 没有效果。

有人建议安装 32 位支持,但显然我的操作系统已经有了:

$ dpkg --print-foreign-architectures
i386

这里是另一个遇到过相同问题的人。这是一个 ServerFault 问题,但它显然在 ServerFault 上被删除了,我猜是那里的题外话。没有对该问题的答案。


编辑使用-v(详细)标志,openconnect不断重复以下几行:

$ openconnect -v -c cert.pem --csd-user=kajmagnus vpn.example.com
...
GET https://vpn.example.com/+CSCOE+/sdesktop/wait.html
SSL negotiation with vpn.example.com
Connected to HTTPS on vpn.example.com
Got HTTP response: HTTP/1.1 200 OK
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Cache-Control: no-cache
Pragma: no-cache
Connection: Close
Date: Thu, 06 Nov 2014 11:10:18 GMT
HTTP body chunked (-2)
Refreshing +CSCOE+/sdesktop/wait.html after 1 second...

答案1

问题是,VPN 服务器已被修改,不再支持 Linux,并且所有旧证书都已失效,我刚刚发现。

所以我认为有两个问题导致了奇怪的错误消息:1)Linux 不受支持,2)证书错误。

答案2

我遇到了类似的问题,但我能够通过以下方式让我的 Fedora Core 25 机器连接到工作 VPN回答在 Ask Ubuntu 上给出。我知道这是一个老问题,但由于它仍然在搜索引擎中很早就出现,所以我想发布一些内容以找到解决方案。

除非你编辑了 openconnect 的输出,否则你的问题可能是你过于严格地遵循了示例。你试图连接到“vpn.example.com”,而不是你的公司 VPN 服务器。

答案3

我的组织昨晚午夜更新了 Cisco VPN 服务器,由于当时处于在线状态,与我所在的项目失去了连接,导致 2 小时的工作成果损失。

不高兴,我开始寻找解决方案。
我发现 NetworkManager 有一个 openconnect 插件,并尝试了它。没有成功。但是,我进行了搜索(sudo apt search openconnect),发现还有另一个名为 network-manager-openconnect-gnome 的插件,并安装了它。

还有更多选择,我能够想出一个可行的组合。

如果将光标指向“保存”按钮,该按钮呈灰色。

它会告诉您配置中哪些部分无效,在我的情况下是代理。在 gnome 版本中,主页上有一个代理选项卡和一个代理设置。尝试适用于您之前工作的 openconnect 设置的各种组合。祝您
好运。对于我的设置,在主页或身份页面上,代理字段为空白。

我在设置中的“代理”选项卡上使用 wpad.dat/wpad,但这在这里不起作用。我还在常规网络设置中手动配置了代理设置。
此外,我必须使用大量“无代理”条目才能使我需要访问的所有内容正常工作。

相关内容