繁体   English   中英

是否可以严格在网络级别限制前端和后端Azure IaaS VM之间的入口和出口流量?

[英]Is it possible to restrict ingress and egress traffic between front end and back end Azure IaaS VMs strictly at the network level?

我想使用IaaS VM在Azure上创建一个偏执的中心辐射型DMZ安装程序。

我有一个面向公共互联网的前端服务器(即IIS Web服务器),我想对其进行严格锁定。 但是,前端需要访问某些后端服务器(即数据库,域控制器等)。 我要确保:

  1. 只有前端服务器才能与后端服务器通信,并且只能在商定的端口上进行通信。
  2. 后端服务器无法从公共Internet接收向其发送流量。
  3. 后端服务器无法相互通信。
  4. 这些规则在VM操作系统层之外执行,以提供深度防御。

这似乎是一个合理的方案,但是我似乎无法在Azure上实现它。 我最能做的是:

  • 创建IaaS VM前端并适当限制其端点
  • 创建具有“ FrontEnd”和“ BackEnd”子网的Azure虚拟网络 ,将每台计算机放置在适当的子网中。
  • 防止RDP访问后端VM。 如果要RDP到后端计算机,则必须通过前端VM进行。
  • 在这些计算机中的每台计算机上设置Windows防火墙规则,以强制实施这些轮辐式规则。

这行得通,但没有像我所希望的那样被锁定。 我真的很想深入防御,这样我就不必依赖每台计算机上的Windows / Linux防火墙设置。 例如,假设后端服务器必须使用管理员凭据来运行应用程序(假定没有替代方法)。 我想要一个额外的保护层,以使后端服务器上的错误(或恶意查询)不能:

  • 重新配置后端防火墙以减少限制。
  • 与除前端机器(包括公共互联网)以外的任何人交谈。

据我所知,这在使用虚拟网络的Azure上是不可能的,因为:

  • Azure虚拟网络似乎没有公开ACL或任何其他高级筛选支持。
  • Azure IaaS VM仅支持单个NIC,因此前端不能同时在前端和后端子网上进行多宿主。

我想念什么吗? 似乎我可以使用多个虚拟网络将某些东西一起黑客入侵,并将它们作为一堆/ 30子网一起VPN在一起,但这似乎很糟糕。 如果我无法在Azure上弄清楚这一点,看来我唯一合理的选择是尝试使用虚拟私有云(VPC)AWS上进行类似设置。 任何帮助/指导将不胜感激。

自2015年11月起,尽管已提供IaaS v2,但现在仍可以提供您所要求的内容。

可以通过网络安全组(NSG)传递类似于防火墙的规则,但仅限于地址范围,端口和协议。 这在Microsoft网站上有很好的记录: 什么是网络安全组(NSG)?

现在,您还可以创建具有多个NIC的VM(同样是IaaS v2),但是请注意,可能需要增加VM的大小才能添加多个。 同样,这里有一篇合理的文章详细解释了它: 创建具有多个NIC的VM

我从Azure团队收到了一个私人答复,该答复有效地表明当前不可能做到这一点。 这是一项要求提供的功能,但没有设定实施时间表。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM