Ubuntu 22.04.3 服务器:拆分隧道 VPN

Ubuntu 22.04.3 服务器:拆分隧道 VPN

有人有在以上 Linux 发行版上运行的 VPN 拆分隧道吗?我已关注此(优秀)指南这在某种程度上似乎起了作用。

问题是,正如评论中列出的,vpn 用户似乎有与 DNS 相关的问题,这基本上使整个设置无效。评论中有人建议以下方法可以解决:

sudo apt install openvpn-systemd-resolved

然后在 openvpn.conf 中重新配置 Up/Down 以使用以下内容:

up /etc/openvpn/update-resolv-conf
down /etc/openvpn/update-resolv-conf

但我的 vpn 用户仍然没有任何连接。

不用说,这是我第一次接触家庭实验室/Linux,因此,任何能帮我解决这个问题的帮助都将不胜感激。

编辑

我正在尝试做的事情:

我正在尝试在我的 Ubuntu 22.04 服务器上配置一个 vpn 用户,以使用接口 tun0 上的 VPN 连接,同时允许所有其他流量使用接口 enp89s0 上的主家庭以太网连接。

问题是什么:

VPN 用户无法访问互联网,而其他用户仍保持完全连接。例如,运行以下命令时

sudo -u vpn -i -- curl ipinfo.io

请求最终超时并出现以下错误:

curl: (28) Failed to connect to ipinfo.io port 80 after 130351 ms: Connection timed out

我已尝试过:

  1. 删除对 /etc/openvpn/update-resolv-conf 的引用以排除不良/过时的 DNS 脚本。

  2. 确保符号链接 /etc/resolv.conf -> ../run/systemd/resolve/stub-resolv.conf 在我执行所有操作后保持完好

  3. 在 /etc/systemd/resolved.conf 中添加以下行DNSOverTLS=opportunistic

  4. 通过在我的 opvn 配置中添加以下 3 行来强制使用特定的 DNS 服务器

    拉动过滤器忽略“dhcp 选项 DNS”dhcp 选项 DNS 9.9.9.9 dhcp 选项 DNS 149.112.112.112

除此之外,还有疯狂和牵强的想法...没有任何一个是奏效的。

为了确认,我的 tun0 接口工作正常,我已通过从 ovpn 配置中删除以下行来验证这一点:

route-noexec

然后

curl ipinfo.io

成功返回VPN连接ip信息。

@mpboden 我已按照你解决方案中的所有步骤进行了操作您列出的问题,问题仍然存在。

谢谢

相关内容