我们有主机-Windows、代理-Linux(相同的 VNET,不同的子网)和 sftp-Linux(不同的 VNET 和子网)计算机,其中在端口 815 上启用了 SSH(对设置到每台计算机的域执行 SSH)。现在,我们已经实施了防火墙(新 VNET 和 AzureFirewallSubnet),并将 VM VNETS 与防火墙(对等)连接。在端口 815 上为 SSH 启用了 Dnat 规则,但通过防火墙,我们只能连接到一台首先启用了 SSH 的计算机(因为我们对所有计算机使用相同的端口)。我想知道是否有任何方法可以通过 SSH 连接到计算机的公共 IP,这样就无需在不同的端口或任何其他可能的方式设置 SSH。任何线索都将非常有帮助,因为我是防火墙和网络方面的完全初学者。提前致谢。
注意:基础设施完全使用 Terraform 构建。
答案1
我将设置一个 S2S VPN,并允许 VPN 将特定 IP 范围作为防火墙规则中不同 vnet 的源。
另一种选择是将 Azure Bastion 放置在需要 SSH 访问的不同虚拟网络中。Azure Bastion 是 Azure 中的一项托管服务,允许通过某种跳转主机进行安全 SSH,但由 Microsoft 管理。它允许您使用远程桌面协议 (RDP) 或安全 Shell (SSH) 通过 Azure 门户直接连接到虚拟机,从而无需公共 IP 地址或 VPN 连接。这通过减少对公共互联网的暴露来增强安全性并简化远程访问管理。