我正在 Azure 中构建一个虚拟机网络,一组虚拟机用于 webtier,一组虚拟机用于数据/sql 层。我将创建一个 jumpbox 虚拟机,它可以通过 VPN 实现 devops 访问。
现在我读到我应该有最少的软件和连接选项到我的实际 VM,因为它应该通过 jumpbox 运行以最小化我的 VM 的攻击面并拥有一个中央访问点。
现在我想做两件事:
通过远程桌面连接到我所有的虚拟机,我想我可以简单地创建一个到我的 jumpbox 的 VPN RDP 连接,当登录到我的 jumpbox 时,只需使用内部 v-network IP 打开另一个 RDP 窗口到我的其他虚拟机。
直接通过 SQL Server Management Studio 或使用连接字符串的应用程序访问我的(负载平衡 w/可用性集)MSSQL 2016 实例。MSSQL 实例位于我的 sql 层 VM 上,而不是我的 jumpbox 上,我可以以某种方式将 SQL 流量从我的 jumpbox 转发到我的 sql 层 VM 吗?我猜想直接访问 sql-tier VM 与拥有 jumpbox 的整个想法背道而驰。
注意: - 在 Windows Server 2016 上运行 MS SQL Server 2016
有很多方法可以解决这个问题,在不了解您的业务需求的情况下没有直接的答案,我强烈建议您阅读并自行决定:https ://docs.microsoft.com/en-us/azure/best -practices-network-security?toc=%2fazure%2fvirtual-network%2ftoc.json
当 Azure 附带 Jumpbox 时,它不会是最安全的设计,因为您可以使用比 Jumpbox 更便宜、更方便的免费工具。
我会不惜一切代价避免让 SQL 向 Internet 开放,除非你有一个强大的商业案例,然后使用带有 ACL 的网络安全组来允许仅从特定 IP 地址访问它。
对于您的多层部署,我建议以下内容:
这是一个更好的部署方案,下面是它应该是什么样子的一个很好的总结:
参考资料:
网络安全组:https ://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-manage-nsg-arm-portal
Azure 站点到站点 VPN:https ://docs.microsoft.com/en-us/azure/vpn-gateway/vpn-gateway-howto-site-to-site-resource-manager-portal?toc=%2fazure %2fvirtual-network%2ftoc.json
Azure 点到站点 VPN:https ://docs.microsoft.com/en-us/azure/vpn-gateway/vpn-gateway-howto-point-to-site-resource-manager-portal
访问控制列表:https ://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-acl-powershell
是的,我们可以将 VM 工作部署为跳转框。
我们可以在jump box上部署RRAS(VPN),它作为一个P2S VPN服务器,连接到RRAS服务器后,就可以直接连接到Azure VM。我们可以使用 windows 客户端连接到 RRAS 服务器,也可以在 Linux 上安装 SSTP-Client,然后我们可以使用 Linux 连接到 RRAS 服务器。
有关启用 RRAS 作为 VPN 服务器的更多信息,请参阅链接。