可以连接到 Windows 的透明 VPN 服务器

可以连接到 Windows 的透明 VPN 服务器

我有一台托管的 Ubuntu 服务器,其中有几个额外的全局 IP 地址分配给子接口(eth0:0、eth0:1)。它们与分配给 eth0 的主 IP 地址位于同一个块内,并且完全向全世界开放(机器上的防火墙除外)。

我希望能够使用其中一个额外的 IP 地址作为远程 Windows 计算机的 VPN 端点。理想情况下,它将是 Windows 本机支持的某种 VPN 协议,这样我就不需要在 Windows 计算机上安装自定义软件了。

通常我会使用 OpenVPN 之类的东西,但我无法让它做我想要的事情。我想要尽可能高的透明度。理想情况下,流量只会通过 VPN 转发,而 Windows 计算机会像在服务器网络上一样运行。理想情况下,IP 流量将完全透明。显然,一次只能连接一台 Windows 计算机。

是否有任何 Ubuntu 软件包可以满足我的要求?或者是否有某种方法可以让 OpenVPN 对入站流量完全透明?

答案1

这个可能是您问题的解决方案。如果不是,您应该在您最喜欢的搜索引擎中搜索“L2 tunnel openvpn”,就像 tudor 所说的那样。请随时向我们通报您的进展!

答案2

最透明的选择是以太网桥接。具体细节因发行版而异,但基本上你首先要eth0变成 br0

 iface eth0 inet manual
 iface br0 inet static
    address, gateway ...     # anything that was on eth0
    bridge_ports eth0        # just eth0 for now
    bridge_stp off           # no loop risk => no need for waits
    bridge_waitport 0
    bridge_fd 0

几乎您在 上所做的一切都是eth0您可以做的br0:设置地址、iptables 规则……

之后,您将在 tap 模式下设置 OpenVPN:您的 VPN 客户端现在位于 LAN 中tap0

最后,正如您可能猜到的那样,我们brctl addif br0 tap0将每个人都连接到一个大局域网。您的 Windows 计算机现在只需在局域网上获取一个 IP 地址即可:实际上,它在那里有一个以太网端口。

我已经这样做了,因为我需要它,而且它有效,但是......考虑放弃一些透明度,转而使用 NAT 方式进行流量传输。这要简单得多。它甚至可能像安装虚拟机、将其桥接到eth0(对此有充足的 GUI 支持)和安装算法(几乎只需点击一下,就可以轻松支持 Apple、Android、Windows……)。

相关内容