我正在尝试设置我的第一个 OpenVPN 服务器,但我无法确定在我的特定设置中应该使用 tun 还是 tap。
我有一个 Amazon VPC,其中包含一些运行 Windows Server 2012 的 EC2 实例,它们将用作工作站。VPC 中还有一个文件服务器(也运行 WS2012),工作站通过 SMB 连接到该文件服务器。
具体来说,我正在尝试设置一个 OpenVPN 服务器(Ubuntu 上的这个)以允许远程客户端连接到 VPC,然后使用 RDP 访问工作站本身。
我尝试使用 tun,但仍然无法让客户端看到网络上的工作站(我尝试通过 RDP 连接到工作站,但连接失败,ping 也失败)。我知道这可能是由于多种原因造成的,所以我试图放弃可能出错的地方。我想 tun 是最好的选择,因为我不需要使用任何非 IP 协议,而且它会更高效,但我想确定一下。
顺便说一句,我一直在遵循这个指南:https://openvpn.net/index.php/open-source/documentation/howto.html
提前致谢。
答案1
我在我们的 VPC 中针对此确切用例使用了 tun(我们使用 linux 而不是 windows,但除此之外,它们都是一样的)。所以我认为在这种情况下 tun 是可以接受的。
需要注意的事项有:
- VPC 内的 OpenVPN 服务器是否在传递流量?大多数 Linux 发行版默认不转发 IP 流量。通过在 Openvpn 服务器上运行嗅探器并查找离开其网络接口并发往 VPC 中另一台机器的流量,应该很容易测试这一点
- OpenVPN 服务器是否对流量进行 NAT?我们在 OpenVPN 服务器上使用 NAT,因此 VPC 内的其他服务器会“看到”流量,就好像它来自 OpenVPN 服务器一样。在非 AWS 网络中,这不是必需的,但是我从未在没有 NAT 的 VPC 上使用过 OpenVPN,因此我无法评论这是否有效。
- 是您正在 RDP 连接的实例所应用的安全组阻止了流量吗?应该很容易暂时允许所有流量到实例作为测试。
- 本地(在 RDP 服务器上)防火墙是否阻止任何流量?
通常,在调试 OpenVPN 时,我发现在 OpenVPN 盒的以太网网卡上以及目标机器的以太网网卡上运行网络嗅探器,对于识别流量被停止或阻止的位置有很大帮助。