首先,我完全理解 Web 服务器应该位于单独的网络上,在 DMZ 中,不连接到域(或至少在不同的林中)。但是,我是一名网站开发人员,并向网络提出此论点。
我曾提出过这样的论点:如果有人控制了 Web 服务器,你肯定不希望该服务器和 DC 之间存在信任关系。但我并不完全理解如何验证这种信任关系是否会导致问题。
换句话说,如何通过访问网络上的 Web 服务器来入侵企业网络,以及当谈到使用站点到站点 VPN 连接到本地网络的 Azure VNET 时,这些原则如何变化。
答案1
据我所知,单独的 Vnet 或子网上的 Web 服务器是更安全的解决方案。请参阅下面的屏幕截图:
Web 服务器位于网络的前端,直接与 Internet 进行通信。传入的数据包应先流经防火墙、IDS 和 IPS 等安全设备,然后再到达后端服务器。来自工作负载的 Internet 绑定数据包还可以流经外围网络中的安全设备,以用于策略实施、检查和审计目的,然后再离开网络。此外,外围网络可以在客户虚拟网络和本地网络之间托管跨界 VPN 网关。
更多信息请参阅此文章。
答案2
无论是部署到云 IaaS 平台还是本地平台,设计应用程序的安全性都不会发生很大变化。概念是相同的,尽管存在细微差别。2 层或 3 层 Web 应用程序部署认为每一层都是安全域的一部分。根本原因是要限制破坏一层的影响传播到其他层。通常将前端部分部署在 DMZ 区域内。前端层直接暴露给用户(公众),因此更容易受到攻击,但同时不应包含敏感数据或允许访问其他层的数据(加密数据、无特权访问帐户、可能是不同的域)。如果入侵者获得对前端层的访问权限,那么如果其他层部署在具有有限授权流量的不同安全区域,则该入侵者将更难以轻松访问它们,因此您可以在为时已晚之前发现漏洞。即使在 Azure 上,您也可以将 NSG 应用于每个 VM,以便它与在另一个网络下时类似,最大限度地提高安全性是一种很好的做法。此外,从逻辑上讲,在同一个 VNET 或子网中攻击某些东西比在另一个子网上攻击更容易。最后,您不需要另一个 VNET:不同的子网足以实现相同的安全级别,并简化平台。