详细DNS服务器工作状态
在维护DNS服务器时,网管员希望知道到底是哪些用户在使用DNS服务器,同时也希望能对DNS状态查询做一个统计。这里我们可以使用dnstop查询DNS服务器状态:
    软件下载和安装:
  
|  | 
运行软件:
    如果想查看通过eth0的DNS网络流量可以使用命令
 
|  | 
    在运行dnstop的过程中,可以敲入如下命令: s,d,t,1,2,3, ctrl+r,ctrl+x,以交互方式来显示不同的信息。
    1-(TLD)记录查询的顶级域名,
    2-(SLD)记录查询的二级域名,
    3-(SLD)记录查询的三级域名,
    s-(Source)记录发送dns查询的客户端ip地址表,
    d-(Destinations)记录dns查询的目的服务器的ip地址表 ,
    t-(Query Type)记录查询详细类型。
    ctrl+r-重新纪录。
    ctrl+x-退出。更详细信息可以查看man dnstop。
   
下面以使用最为广泛的Unix类DNS软件BIND为例,介绍如何配置一个安全DNS服务器。本文以RHEL 4.0为工作平台。 
1. 隔离DNS服务器
    首先应该隔离BIND服务器,不应该在DNS服务器上跑其他服务,尽量允许普通用户登陆。减少其它的服务可以缩小被攻击的可能性,比如混合攻击。
 
    2. 隐藏BIND的版本号
    通常软件的BUG信息是和特定版本相关的,因此版本号是黑客寻求最有价值的信息。黑客使用dig命令可以查询BIND的版本号,然后黑客就知道这个软件有那些漏洞。因此随意公开版本号是不明智的。隐藏BIND版本号比较简单,修改配置文件:/etc/named.conf,在option部分添加version声明将BIND的版本号信息覆盖。例如使用下面的配置声明,当有人请求版本信息时,迫使nmaed显示:“Unsupported on this platform ”
  
|  | 
    3. 避免透露服务器信息
    和版本号一样,也不要轻易透露服务器其他信息。为了让潜在的黑客更难得手,建议不要在DNS配置文件中使用这HINFO 和 TXT两个资源记录。
 
    4. 关闭DNS服务器的glue fetching选项
    当DNS服务器返回一个域的域名服务器纪录并且域名服务器纪录中没有A纪录,DNS服务器会尝试获取一个纪录。就称为glue fetching,攻击者可以利用它进行DNS欺骗。关闭glue fetching是一个好方法,修改配置文件:/etc/named.conf.加入一行:
  
| 
 | 
分页: [1] [2] [3] [4]
- 上一篇:甲骨文联合Sun推OLTP服务器
- 下一篇:如何选择“称职”的高端防火墙




