我需要访问的特定 vpn 服务器的证书已过期。这是我工作中的服务器,我一直在催促我们超负荷的管理员更新它。到目前为止,直到他更新为止,我总是告诉 ubuntu 我“知道自己在做什么”,但有时我很匆忙,没有完全检查它是否正确,所以这是一个潜在的问题。
尽管证书已过期,我还是知道并信任证书持有者,但我无法更改已过期的证书。有没有办法将此特定证书设置为受信任?我知道这不是一个好主意,但替代解决方案也不是一个好主意。
+
我认为我使用的是 Ubuntu 20.04.03 LTS 的默认设置,(从设置-->网络--> VPN <点击> 使用协议进行设置VPN Protocol being Cisco AnyConnect or openconnect
)
答案1
这并不能 100% 解决问题,但就我而言,我使用命令行连接到 vpn:
sudo openconnect -u myusername myserver.foo.bar
然后得到了答案:
POST https://myserver.foo.bar/
Connected to xxx.xxx.xx.xx:443
SSL negotiation with myserver.foo.bar
Server certificate verify failed: certificate expired
Certificate from VPN server "myserver.foo.bar" failed verification.
Reason: certificate expired
To trust this server in future, perhaps add this to your command line:
--servercert pin-sha256:JsDBYfoobarfoobarfoobarfoobarfoobarE+z2adHg=
Enter 'yes' to accept, 'no' to abort; anything else to view:
然后ctrl-C
就能连接:
sudo openconnect -u myusername myserver.foo.bar --servercert pin-sha256:JsDBYfoobarfoobarfoobarfoobarfoobarE+z2adHg=