通过 NAT 或代理连接到 VNET 中的 Azure 容器实例以进行 SSH

通过 NAT 或代理连接到 VNET 中的 Azure 容器实例以进行 SSH

我已经将一个带有小型 sftp 服务器的 ACI 部署到 Azure 中的虚拟网络。因此,当您通过 VPN 进入网络并通过 10.0.0.2 之类的方式访问 sftp 时,这非常有效。

我现在想公开这一点,并通过 NAT 和网络安全组控制访问,以限制对预定义 IP 的访问。我尝试了 Azure 应用网关,但根据微软的说法,这不允许 SSH。

然后我尝试使用负载均衡器,希望可以对此进行 NAT,但似乎 Azure LB 只想转到虚拟机或规模集。而不是任意的内部 IP 地址。

有没有办法通过 Azure 中的某种 NAT 工具映射公共 IP 来实现我想要的效果?目前我唯一的其他选择似乎是创建一个 VM 并在其上放置一个 SFTP 服务器,或者使用公共 IP(VNET 之外)公开 ACI 并使用 Linux 中的 IPTables 来控制访问 - 而且我甚至不知道这是否可以使用此版本,因为它本质上是一个 docker 镜像。

感谢任何建议!只是想保护 sftp。

谢谢,

答案1

您可以为 ACI 实例分配自定义域,或使用现成的“customlabel.azureregion.azurecontainer.io”。分配自定义域时,它会为您提供 PIP,或者您可以通过 CNAME 使用 DNS 映射到您的实例。

如需确认,请参阅关注 Microsoft docs.microsoft.com请参阅标题为“公共 IP 连接和 DNS 名称”的文章。


此外,还有一个新的预览版允许在 VNET 中部署 ACI: 请参阅此文章以供参考

相关内容