openconnect
我的 Arch Linux(准确地说是 Antergos)遇到了一些问题,我不知道是什么原因造成的。 (虽然我已经习惯了 Linux 等,但我对 VPN 和 很陌生openconnect
。)
我正在尝试通过 2 种方法连接到我大学的 VPN。我首先按照说明进行操作,该说明只是创建一个 Cisco AnyConnect 兼容 VPN 并输入名称和网关。
当我这样做并尝试通过网络管理器小程序连接时,它不起作用。当我翻转 VPN 开关时,它会立即翻转回来,仅此而已。没有错误消息或任何东西。
我尝试的第二种方法是通过命令行。所以我尝试这个
$ sudo openconnect -u myusername my.gateway.edu
(从现在开始,我将用用户名替换实际网关my.gateway.edu
并模糊相关 IP)
这是我从该输入得到的日志:
POST https://my.gateway.edu/
Connected to 164.**.**.**:443
SSL negotiation with my.gateway.edu
Server certificate verify failed: signer not found
Certificate from VPN server "my.gateway.edu" failed verification.
Reason: signer not found
To trust this server in future, perhaps add this to your command line:
--servercert sha256:bb2476a96b88357fe74f28a347ba549a2af4bea8668e30a77e1a8295f466bfdc
Enter 'yes' to accept, 'no' to abort; anything else to view: yes
Connected to HTTPS on my.gateway.edu
Got HTTP response: HTTP/1.1 401 Unauthorized
Error generating GSSAPI response:
gss_init_sec_context(): Unspecified GSS failure. Minor code may provide more information
gss_init_sec_context(): SPNEGO cannot find mechanisms to negotiate
Server 'my.gateway.edu' requested Basic authentication which is disabled by default
GET https://my.gateway.edu/
Connected to 164.**.**.**:443
SSL negotiation with my.gateway.edu
Server certificate verify failed: signer not found
Connected to HTTPS on my.gateway.edu
Got HTTP response: HTTP/1.1 401 Unauthorized
No more authentication methods to try
GET https://my.gateway.edu/
Please enter your username.
POST https://my.gateway.edu/auth
Please enter your password.
Password:
POST https://my.gateway.edu/auth
Got CONNECT response: HTTP/1.1 200 CONNECTED
CSTP connected. DPD 90, Keepalive 32400
Connected as 169.**.***.**, using SSL
DTLS handshake failed: Resource temporarily unavailable, try again.
Failed to open tun device: No such device
Set up tun device failed
Unknown error; exiting.
我已经询问了大学的 IT 支持,但他们也不知道发生了什么(我认为他们对 Arch Linux 不是很熟悉)。我尝试过其他一些方法,例如使用标志,--script /etc/vpnc/vpnc-script
但结果是相同的。
编辑
我最近遇到过这个网站通过IT人员说我必须在连接之前创建一个隧道设备。即使这样做之后,结果sudo openconnect -u myusername my.gateway.edu --interface tun1
仍然是一样的。
答案1
答案2
在我使用创建隧道设备后这个链接CLI 方法有效,尽管 GUI 方法仍然失败。我也是networkmanager-vpnc
通过pacman安装的,但我认为这与任何事情都没有关系。
我还通过 IT 人员发现添加该--http-auth=Basic
标志可以消除一些错误。值得注意的是,即使在这一切之后,我仍然得到一个DTLS handshake failed
,即使我可以连接到我需要的服务器。