何时应将服务器置于 DMZ 中,何时应在防火墙上打开端口并将其保留在网络内?我指的是 Active Directory 服务器、IIS 服务器以及大多数基于 Windows 的设置。
我注意到将其放置在 DMZ 中存在的一些问题是,它不再位于域中,它没有对我们内部服务器的名称服务器访问权限,还有一些其他使其使用起来很奇怪的事情。
答案1
位于 DMZ 中的服务器无法打开到您网络的连接,因为中间有防火墙(根据 DMZ 的定义),因此您的网络将受到保护,免受它,如果它被攻击者攻陷:在这种情况下,被攻陷的服务器不能被用作对网络其余部分发起新攻击的起点。但如果服务器位于您的网络内部,并且您打开防火墙端口以允许外部用户使用它提供的服务访问它,情况就不一样了。如果您的服务器位于戒备森严的 DMZ 或 LAN 内部,同样成功的外部攻击(例如针对网站)将导致截然不同的后果。
也就是说,将服务器放置在 DMZ 中只有在您能够真正过滤它与内部网络之间的流量时才有用;如果它需要域控制器访问以进行身份验证、数据库访问以获取后端数据以及邮件访问以发送消息(如 Exchange CAS),并且您需要打开它与内部服务器之间的所有这些端口才能真正执行任何有用的操作,那么将它放置在 DMZ 中真的没有什么意义。域成员服务器是这里最糟糕的问题:域访问需要很多计算机与其域控制器之间打开端口,因此它可能与它们位于同一网络中;而受到感染的域成员计算机是大的安全问题,因为它可以访问域中的很多东西。
Windows 服务器的经验法则:如果它需要成为域成员,那么将其放置在 DMZ 中是 A) 使其正常工作很麻烦,并且 B) 几乎无用;将它们放在 LAN 中,但一定要确保它们完全打上补丁,运行良好的防病毒软件,并受到锁定良好的外部防火墙的保护。这里最好的方法是使用反向代理、入站邮件中继或任何其他可以充当应用程序网关的东西,并避免将它们直接暴露在互联网上。
答案2
一个好的经验法则是考虑如果服务器通过您打开的服务受到攻击,可能造成的损害。您需要考虑每个设备的两个因素:风险级别(“这有多大可能受到攻击?” - 一旦服务暴露在互联网上,这个指标就会大大提高)和敏感度级别(“如果这个系统受到攻击,损失有多大?是否有重要/机密数据?”)。
对于高风险系统,你应该努力使其敏感度尽可能低。这就是你建立 DMZ 的原因。
DMZ 的理念是隔离高风险系统,这样攻击者就需要穿透额外的安全层(另一个防火墙)才能访问您的高度敏感系统。您可能需要在 DMZ 和内部网络之间建立一些连接,但请尝试将数据向外推送到 DMZ,而不是允许连接入站到内部网络。
答案3
如果服务器在您打开内部网络端口时受到威胁,攻击者可能会获得访问权限或更轻松地对内部系统进行攻击。在当今世界,您计划在 DMZ 中部署的大多数系统都可以进行调整和配置,以执行某种类型的内部/DMZ 网络区分。事实上,流量流动的唯一方式是从您的内部网络流向 DMZ,本质上是内部服务器打开与 DMZ 中服务器的连接。