什么时候应该放置一个服务器在DMZ vs打开防火墙的端口,并保持在networking中? 我指的是活动目录服务器,IIS服务器,以及基于Windows的安装程序。
我注意到放置在DMZ中的一些问题是,它不再在域中,它没有名称服务器访问我们的内部服务器,以及一些其他的东西,使它很奇怪的工作。
放置在DMZ中的服务器无法打开与networking的连接,因为中间有一个防火墙(通过DMZ的定义),所以如果networking受到攻击者的威胁,networking将受到保护:在在这种情况下,受攻击的服务器不能作为对networking其余部分发起新的攻击的起点。 如果服务器放置在您的networking中,则情况并非如此,您可以打开防火墙端口以允许外部用户使用其提供的服务访问它。 如果您的服务器处于防范非常有限的DMZ或局域网内,相同的成功的外部攻击(对网站的攻击)将导致非常不同的后果。
也就是说,把一台服务器放在一个DMZ里真的是有用的,如果你真的可以过滤它和你的内部networking之间的stream量; 如果它需要进行身份validation的域控制器访问,后端数据的数据库访问和发送邮件的邮件访问(如Exchange CAS),则需要打开它与内部服务器之间的所有端口,以便实际上做任何有用的事情,那么把它放在非军事区中确实没什么意义。 域名成员服务器是这里最糟糕的犯罪者:域名访问需要在计算机和域控制器之间有这么多的开放端口,因此它可以放置在同一个networking中。 而且被攻陷的域名成员计算机是一个很大的安全隐患,因为它可以访问域中的很多东西。
Windows服务器的经验法则:如果它需要成为一个域成员,那么把它放在一个DMZ中是:A)让它正常工作很痛苦B)几乎没用; 让他们在你的局域网中,但一定要保持完整的修补程序,运行良好的防病毒,并由一个locking好的外部防火墙保护。 这里最好的方法是使用反向代理,入站邮件中继或任何可以充当应用程序网关的东西,并避免将它们直接暴露给Internet。
一个好的经验法则是考虑如果服务器通过您打开的服务受到攻击可能会造成的损害。 您需要考虑每个设备的两个因素:风险等级(“这有多大可能会受到影响?” – 一旦服务被互联网暴露,这项措施就应该上去)和灵敏度级别(“How如果这个系统受到损害,会有很大的损失吗?有重要/保密的数据吗?“)。
对于高风险系统,您应该尽可能降低灵敏度。 这就是你build立DMZ的原因。
非军事区的想法是隔离高风险系统,以便攻击者需要穿透额外的安全层(另一个防火墙)来访问高度敏感的系统。 DMZ和内部networking之间可能需要一些连接,但是尝试将数据推送到DMZ,而不是允许连接入站到内部networking。
如果服务器在打开到内部networking的端口时受到攻击,攻击者可能有权访问内部系统或更容易执行攻击。 在当今世界,您正在计划部署在DMZ中的大部分系统都可以调整和configuration为执行某些types的内部/ DMZnetworking区分。 事实上,交通stream量的唯一途径就是从你的INTERNALnetworking到DMZ,本质上,内部服务器打开DMZ中服务器的连接。