在 Azure 中运行 IPsec 客户端 VPN 服务器

在 Azure 中运行 IPsec 客户端 VPN 服务器

我目前正在探索在 Azure 中运行客户端 VPN 服务器的选项。我研究了点到站点 VPN 功能,它似乎更像是一种供管理员拨入的方法,而不是成熟的客户端 VPN 解决方案。

剩下的选项之一是在 Azure VM 中运行客户端 VPN 服务器。许多客户端 VPN 选项都以某种方式使用 IPsec,它使用 TCP/UDP 以外的 IP 协议进行操作(ESP/AH)。据我所知,Azure 不允许 TCP/UDP 以外的流量进入您的虚拟机。基于端点的 ACL 只允许您选择 TCP 或 UDP。我一直在调查网络安全组 (NSG),希望它们能提供解决方案,但它们也只提供“TCP”、“UDP”或“*”作为 ACL 中的协议选项。这让我相信在 Azure 中运行 IPsec 服务器是不可能的。这是正确的吗,还是有我没有遇到过的可用选项?显然,有些选项只需要 TCP/UDP(我想到了 Microsoft SSTP),但具体到 IPsec 的问题上呢?

顺便问一下,在为 Azure 中托管的资源提供客户端 VPN 时,人们还采用了哪些其他解决方案?

答案1

您说得对,只允许与 Azure 虚拟机建立 TCP 和 UDP 连接;它们也受到严重限制,例如“您只能打开单个端口而不能打开整个端口范围”,这实际上不允许使用动态协议。

您可以使用实例级公共 IP, 这使得全部交通全部端口到虚拟机(但一定要打开防火墙!);然而,这仍然只允许 TCP 和 UDP 流量

目前,客户端 VPN 连接唯一支持的选项是使用 Azure 的内置客户端 VPN 服务,顺便说一句,只要您可以为每个客户端获取客户端证书,该选项就可以正常工作。

另外,正如你所说,另一个选择是使用 HTTPS 隧道作为 VPN 服务器,而不是 IPSec;HTTPS VPN(包括 Windows 的 SSTP)在 TCP 端口 443 上运行,因此它们实际上可以在 Azure VM 上工作;但是,如果你想在 Azure VM 上运行 VPN 服务器,你可能会遇到各种网络问题,因为当你尝试执行未明确支持的操作时,Azure VM 确实无法很好地运行,尤其当涉及到网络时。

相关内容