如何通过我的 openconnect VPN 路由所有流量?

如何通过我的 openconnect VPN 路由所有流量?

默认情况下,我公司的 AnyConnect VPN(我在 ubuntu 上使用 openconnect 连接)仅将流量隧道传输到某些公司站点。

不幸的是,我目前在中国,而防火墙阻止我访问我们的许多云服务(例如 Google Apps),因此我希望通过 vpn 路由我的所有计算机流量以绕过阻止。我该怎么做?

答案1

如果您的 VPN 网关仅通告到特定网络的路由,openconnect 会将此信息传达给您的vpnc 脚本通过设置 CISCO_SPLIT_INC 环境变量:

#* CISCO_SPLIT_INC              -- number of networks in split-network-list
#* CISCO_SPLIT_INC_%d_ADDR      -- network address
#* CISCO_SPLIT_INC_%d_MASK      -- subnet mask (for example: 255.255.255.0)
#* CISCO_SPLIT_INC_%d_MASKLEN   -- subnet masklen (for example: 24)

在 Ubuntu 上,您可以编辑 /etc/vpnc/vpnc-script 并尝试将 CISCO_SPLIT_INC 覆盖为空字符串,以便 vpnc-script 将 tun0 设置为系统的默认路由:

# =========== script (variable) setup ====================================

# >>>INSERT THIS LINE:
CISCO_SPLIT_INC=

PATH=/sbin:/usr/sbin:$PATH

OS="`uname -s`"

网关的拆分隧道包含和路由设置是分开的。网关的路由规则可能仅设置为允许发往拆分隧道设置中列出的网络的流量,即使您在客户端添加了其他路由(或默认路由)。您必须尝试一下才能知道。

Android 版 OpenConnect,有一个每个 VPN 配置文件选项可以覆盖拆分隧道设置。将拆分隧道模式设置为“开启 - DNS 使用 VPN”,并将拆分隧道网络设置为“0.0.0.0/0”。这相当于 Ubuntu 上的 vpnc-script 更改。

如果使用贵公司现有的 AnyConnect 网关无法实现上述功能,您可以考虑设置一个便宜的 VPS 并运行自己的私有监控服务器安装。

相关内容