如何设置 Azure VM 来运行公共服务

如何设置 Azure VM 来运行公共服务

我所在的组织正在尝试不再托管自己的虚拟机,而是将它们全部迁移到云中,即 Azure。这对我们来说都是新鲜事,所以我要解决的第一件事是设置一个虚拟机,用于托管我们使用的自动化应用程序的许可证服务器。

在 Azure 资源管理器中创建 Windows VM 很容易。在该 VM 上安装许可证服务器后,我发现它可以为我创建的其他 Azure VM 上的自动化应用程序实例提供许可证。

但问题是:

我们当前只能拥有一个许可证服务器,因此云中的这个许可证服务器仍然需要为我们在本地机器上运行的自动化应用程序提供服务。

许可证服务器只需要打开 TCP/UDP 端口 7266,因此我确保该端口在 Windows 实例上已打开,并进入 Azure NSG 以确保已添加入站和出站规则以允许该端口。

我的理解是,资源管理器中的新 Azure VM(即非经典)不需要端点。我在 Azure 中使用 DNS 名称添加了公共 IP,该名称从我们的网络解析以匹配目标 Azure VM 的公共 IP。

但无论我使用 DNS 还是特定的 IP 地址,我们的机器始终会收到以下信息:

错误:无法建立连接,因为目标计算机主动拒绝它 [::ffff:40.115.76.87]:7266

我希望有人足够熟悉,能够帮助我如何配置 Azure VM,以使服务可以从 Azure 外部公开访问。

除了入站规则之外,Azure 论坛没有提供任何新选项供我尝试。我猜我错过了一些简单的东西?

答案1

要验证端口是否可以从客户端访问,我们可以使用一个名为端口查询。这是一个基于 GUI 的工具,使用起来很简单。如果您使用的是 Linux,请使用 nmap 检查端口是否可以从客户端访问。

如果端口无法访问,请检查以下详细信息:

  1. 出站流量是否被本地防火墙阻止?

  2. NSG 是否已正确配置?注意:NSG 可以与 NIC 和 Subnet 关联。请检查它们是否已正确配置。

  3. VM 的本地防火墙是否已正确配置以允许来自互联网的访问?

如果端口可达,说明网络配置正确,需要从应用层面来排查这个问题。

顺便说一句,我完全同意@BrunoFaria的观点,即如果许可服务器不是为此设计的,则不应将其暴露在互联网上。您需要建立一个站点到站点 VPN在 Azure 和您的本地网络之间,以便您的本地客户端可以通过其私有 IP 访问许可服务器。

相关内容