Hre*_*sna 6 network-manager vpn networking openvpn
对 Linux 相当陌生,运行 Ubuntu 18.04 LTS。
我正在寻找复制可以在 macos 硬件和操作系统上执行的功能:与硬件接口共享操作系统级 VPN 连接。
在这种特殊情况下,笔记本电脑连接到不安全的 wifi,建立 VPN 隧道,然后与以太网接口共享 VPN,在该接口上我连接一个 DD-WRT 路由器(显然是双 nat),为客户端提供安全的 wifi/以太网。使用具有真实操作系统的笔记本电脑作为网关的原因是通过浏览器处理强制门户(正如许多酒店所做的那样)。
此设置使得客户端流量不可能通过网关 WiFi 泄漏,因为仅共享 VPN 连接。如果 VPN 断开,客户端将根本无法连接。在 macos 下使用 l2tp 很容易做到。
有没有一种相当简单的方法可以从 gnome GUI 执行此操作?我花了几个小时尝试让 L2TP+IPsec 隧道正常工作,最后放弃了。我现在正在使用OpenVPN。但我找不到一种简单的方法来专门共享 OpenVPN 连接,只能使用 wifi,如果隧道断开,wifi 就会变得不安全,从而暴露客户端流量。
谢谢你!
经过一些尝试和错误以及来自不同论坛的帮助,我成功地完成了这项工作。请注意,我切换到 OpenVPN 协议是因为 Linux 中有更好的支持并且整体吞吐量更好。
\n\n唯一可以使用 GUI 完成的部分是设置 OpenVPN 连接以及第二个接口上的客户端网络(这是在网络管理器中完成的)。就我而言,ens9 是一个辅助以太网接口,我在唯一的本地子网上使用静态 IP 配置了该接口。客户端设备已预先配置为使用该 IP 作为网关。
\n\n我的解决方案的完整详细信息如下: https: //www.linuxquestions.org/questions/linux-networking-3/share-vpn-with-ethernet-interface-4175655027/
\n\n网关设备本身的 VPN 终止开关如下所示:
\n\n在 /etc/sysctl.conf 中进行这些更改
\n\n#disable ipv6\nnet.ipv6.conf.all.disable_ipv6 = 1\nnet.ipv6.conf.default.disable_ipv6 = 1\nnet.ipv6.conf.lo.disable_ipv6 = 1\n#enable packet forwarding\nnet.ipv4.ip_forward=1\nRun Code Online (Sandbox Code Playgroud)\n\n在 UFW\xe2\x80\x99s 默认配置文件 (/etc/default/ufw) 中,进行以下更改:
\n\nDEFAULT_FORWARD_POLICY=\xe2\x80\x9cACCEPT\xe2\x80\x9d\nRun Code Online (Sandbox Code Playgroud)\n\n通过命令行,编辑 ufw 规则,如下所示:
\n\nsudo ufw default deny incoming\nsudo ufw default deny outgoing\nsudo ufw allow out on tun0\nsudo ufw allow out on wlp2s0 to XXX.YYY.ZZZ.AAA port 1194 proto udp\nRun Code Online (Sandbox Code Playgroud)\n\n在最后一行中,使用您用于 WAN 连接的接口名称(使用 ifconfig 命令查看所有接口),并使用 OpenVPN 服务器的 IP 地址和端口号 \xe2\x80\x93 这可以解除从提供的 ovpn.config 文件。
\n\n这样您就可以在网关设备上建立一个有效的 VPN 终止开关。最后一步是伪装辅助接口上的 VPN 连接(在我的例子中,是名为 ens9 的以太网设备)。
\n\n不要\xe2\x80\x99t 使用 nm-connection-editor 中的 GUI 方法来启用共享,它将绕过你的终止开关。相反,通过在 *filter 标题上方添加 nat 部分来编辑文件 /etc/ufw/before.rules:
\n\n### Start OpenVPN Share rules\n### NAT table rules\n*nat\n:POSTROUTING ACCEPT [0:0]\n-A POSTROUTING -s 192.168.10.0/24 -o tun0 -j MASQUERADE \nCOMMIT\nRun Code Online (Sandbox Code Playgroud)\n\n其中 192.168.10.0/24 代表您的客户端网络的 IP 地址范围。就我而言,我将其静态定义在该范围内。
\n\n差不多就是这样。\n我预计需要这样的 ufw 规则:
\n\nsudo ufw allow out on ens9 to 192.168.10.0/24\nRun Code Online (Sandbox Code Playgroud)\n\n但没有它它也能正常工作。
\n| 归档时间: |
|
| 查看次数: |
6796 次 |
| 最近记录: |