1、在不同的网络上运行分离的域名服务器来取得冗余性。
2、将外部和内部域名服务器分开(物理上分开或运行BIND Views)并使用转发器(forwarders)。外部域名服务器应当接受来自几乎任何地址的查询,但是转发器则不接受。它们应当被配置为只接受来自内部地址的查询。关闭外部域名服务器上的递归功能(从根服务器开始向下定位DNS记录的过程)。这可以限制哪些DNS服务器与Internet联系。
3、可能时,限制动态DNS更新。
4、将区域传送仅限制在授权的设备上。
5、利用事务签名对区域传送和区域更新进行数字签名。
6、隐藏运行在服务器上的BIND版本。
7、删除运行在DNS服务器上的不必要服务,如FTP、telnet和HTTP。
8、在网络外围和DNS服务器上使用防火墙服务。将访问限制在那些DNS功能需要的端口/服务上。
9、选择一个企业级的域名公司注册。一些域名公司以消费者和小企业为目标。结果,他们不能为企业提供企业级域名注册商所能提供的安全保护。
10、及时更新安全补丁。确保你的Web服务器使用的是最新的安全补丁,这样黑客就不能利用已知的软件漏洞。否则你就是自找麻烦。因为域名被劫持只是早晚的问题。这是Mohan的客户从没有应用最新MySQL补丁汲取的教训。
11、监控网站的流量去了哪里。如果你看到网站流量神秘地发往位于乌克兰的服务器,就像CheckFree所经历的一样,那网站就可能是出了什么问题。
12、从注册商处请求DNS SEC。DNSSEC——会为你的域名系统添加安全扩展——但不能防止域名被劫持,不过唯一可作为保障的技术就是用户点击网站上的链接后,他/她在点击网页链接与进入你网页之间的那段时间里不会被劫持。