【TechTarget中国原创】问:有些人认为域名服务器(DNS)很容易被劫持,你是否同意这种观点?我们应该采取哪些适当的方式来对DNS进行保护?
答:DNS是在域名和IP地址之间进行域名解析的一种分布式数据库。DNS服务器可以实现多种功能,但其最重要的功能就是将便于人们阅读的电脑域名转换成为能够让电脑识别的IP地址,例如将techtarget.com转化成为65.214.43.49, 这样一来,网络设备,电脑和一些软件程序就可以对此进行识别了。DNS数据库是全世界规模最大的分布式数据库,但不幸的是,DNS在设计时,却未能将安全这个因素考虑在内。
作为一个网络管理员,你的职责就是尽可能地令攻击者无法攻击甚或劫持你的DNS服务器。如果你的DNS数据遭到了攻击,攻击者们便可以获得你网络信息,他们通过这些信息可能危害更多的Web服务。比如说,如果攻击者能够修改你的DNS数据,而这些数据中包含着敏感网络资源的域名、电脑名称以及IP地址,他们就可以建立起一些假的Web服务器,或者将电子邮件转发到其它服务器。
为了保护服务器,首先我们必须实施一项保护DNS的安全策略。确定你的客户需要什么样的访问以及你最想要保护哪些数据。这些可以帮助你审阅域名解析流量,看到哪个客户在哪台服务器上进行查询。然后决定你需要哪种级别的安全策略,因为在安全和性能方面总是不能同时达到最佳。如果不需要连接到互联网,DNS服务器就可以得到更多的安全保障。在这种情况下,你的网络只需要一个内部的DNS根帐号(root)和命名空间,并且DNS的职权范围仅限内部。然而,这种情况几乎是不太可能。
我想要推荐的方法是将DNS服务器安置在一个不与网络相连接的单独的防火墙之后。因为没有直接的连接,万一你的一个DNS服务器遭到了攻击,那么这种安排便可以保护你的网络。
如果资金允许,可以配置第三个DNS服务器作为主DNS服务器。这个主服务没有一个公开的IP地址,并且它只能同先前配置的两个次级的DNS服务器进行对话。这样一来,主DNS服务器上的信息无法被直接修改,而发生在次级服务器上的未经同意的修改只有在它得到了来自主服务器的更新命令后才能执行。所有的更新都必须只能通过一个安全的连接来进行传递。
除了只是用防火墙来控制DNS连接之外,你也应该在DNS注册入口和文件系统入口处进行访问控制。
如果想了解更多有关DNS漏洞的信息,我建议阅读RFC 3822,这是一个有关域名服务器(DNS)的威胁分析的文件。同时还有DNSSEC,意即域名服务器安全扩展,这里有许多旨在增进DNS安全的扩展方法。DNSSEC对DNS进行了一些更改,增加了对有密码符号的回应的支持。此外,还有各种不同的扩展方法可以用来支持服务器传递信息的安全性。
即使是加密也无法完全排除DNS服务器被病毒感染的可能性,因此加固服务器本身是进行保护的关键一步。最后,www.dnsreport.com网站的资源可以测试一个特定的域名,并且能够为可能出现的DNS服务器的安全问题提供全面详尽的信息。