我已经在我们的公司 VPN 上使用 openconnect 很长时间了。我将个人笔记本电脑升级到 Ubuntu 18.04,连接后就无法再接收网络流量了。
我使用以下命令来连接:
/usr/bin/sudo /usr/sbin/openconnect --juniper --servercert $CERT --user=$USERNAME $HOST
--servercert
由于证书是在 VPN 服务器上安装的,所以我必须使用该标志。
无论如何,这对于 Ubuntu 的最后几个版本来说一直运行完美。
使用 18.04 时,/etc/resolve.conf
文件按预期进行修改,openconnect 本身没有报告任何问题,但是一旦我连接,就不会收到任何流量。
我读了一些资料,发现 18.04 版本的内核可能需要对文件进行一些更改/etc/sysctl.conf
。
有谁能帮我弄清楚为什么我通过 openconnect 连接 VPN 后不再接收流量?
我假设由于它看起来不像是 DNS,所以这是隧道的问题。
我将与我的 17.10 机器进行比较,看看是否有明显的不同。
任何帮助将不胜感激!
答案1
我执行了:
sudo apt install network-manager-openconnect-gnome
然后我通过 GUI 设置 VPN 详细信息。当我现在通过 GUI 连接时,它正在运行并且有通信。
我仍然需要调查发生了什么不同的事情,但这可能会有所帮助。
答案2
@Fabby 谢谢你的回复。前几天我也取得了一些进展。我读了一些资料,最后手动创建了一个隧道:
sudo ip tuntap add vpn0 mode tun user $USERNAME
然后我必须修改我的命令以使用手动创建的新隧道:
exec /usr/bin/sudo /usr/sbin/openconnect --juniper --servercert $CERT --user=$USERNAME $HOST -i vpn0
这通常有效,但我没有获得 DNS 服务器,如果我手动添加它们,那么一切都正常。
我怀疑最新内核的一些变化阻止了隧道的动态创建,并且当您告诉它使用预制隧道时 DNS 尚未设置。
我会按照你的建议使用 Gnome 网络管理器,并更多地使用命令行。谢谢!