  
- UID
- 274
- 帖子
- 27
- 精华
- 0
- 积分
- 332
- 金币
- 44
- 威望
- 6
- 贡献
- 16
|
DNS软件是黑客热衷攻击的目标,它可能带来安全问题。本文提供了10个保护DNS服务器最有效的方法。 - e. |* }5 t' J( ^4 T
/ p' }4 F3 X3 ^1 G5 Q
1.使用DNS转发器. ?5 h$ p2 L% N& P
7 g! P! {, X" r9 q
DNS转发器是为其他DNS服务器
. i0 O- O& a" n; E& V完成DNS查询的DNS服务器。使用DNS转发器的主要目的是减轻DNS处理的压力,把查询请求从DNS服务器转给转发器, 从DNS转发器潜在地更大DNS高速缓存中受益。& X& d8 F: `; K6 H! R# |) G( P2 O
: p/ N: Q6 E, a 使用DNS转发器的另一个好处是它阻止了DNS服务器转发来自互联网DNS服务器的查询请求。如果你的DNS服务器保存了你内部的域DNS资源记录的话, 这一点就非常重要。不让内部DNS服务器进行递归查询并直接联系DNS服务器,而是让它使用转发器来处理未授权的请求。
. ?. C% m: S4 X; @$ e6 P% a3 e# F4 f& B4 s* M
2.使用只缓冲DNS服务器
0 o1 E. v0 ]" E
- T' g( p. Z! Y- E. Z 只缓冲DNS服务器是针对为授权域名的。它被用做递归查询或者使用转发器。当只缓冲DNS服务器收到一个反馈,它把结果保存在高速缓存中,然后把 结果发送给向它提出DNS查询请求的系统。随着时间推移,只缓冲DNS服务器可以收集大量的DNS反馈,这能极大地缩短它提供DNS响应的时间。
P. |# r# _9 d' `. A, Z8 i/ l
5 U" C. V7 h" r0 \* x 把只缓冲DNS服务器作为转发器使用,在你的管理控制下,可以提高组织安全性。内部DNS服务器可以把只缓冲DNS服务器当作自己的转发器,只缓冲 DNS服务器代替你的内部DNS服务器完成递归查询。使用你自己的只缓冲DNS服务器作为转发器能够提高安全性,因为你不需要依赖你的ISP的DNS服务 器作为转发器,在你不能确认ISP的DNS服务器安全性的情况下,更是如此。
& t6 w; ^; b+ T; P0 I5 h
2 i; t0 d' q. E1 b3 k 3.使用DNS广告者(DNS advertisers)
" K% C+ k O, k, e( v D: F, L) F* b2 m
DNS广告者是一台负责解析域中查询的DNS服务器。例如,如果你的主机对于domain.com 和corp.com是公开可用的资源,你的公共DNS服务器就应该为 domain.com 和corp.com配置DNS区文件。
/ y% e% ~4 F6 ~% Z) `
# }' G3 u: x! k 除DNS区文件宿主的其他DNS服务器之外的DNS广告者设置,是DNS广告者只回答其授权的域名的查询。这种DNS服务器不会对其他DNS服务器进行递归 查询。这让用户不能使用你的公共DNS服务器来解析其他域名。通过减少与运行一个公开DNS解析者相关的风险,包括缓存中毒,增加了安全。+ Q3 [2 k. R0 T: i
c, v0 [" s& E' [- x: P 4.使用DNS解析者3 l/ n6 n+ x; B; T- q W8 L8 X& L
0 X7 x9 ~" h% a0 C) j
DNS解析者是一台可以完成递归查询的DNS服务器,它能够解析为授权的域名。例如,你可能在内部网络上有一台DNS服务器,授权内部网络域名 internalcorp.com的DNS服务器。当网络中的客户机使用这台DNS服务器去解析techrepublic.com时,这台DNS服务器通过向其他DNS服务器查询来执行递归 以获得答案。
( j% }3 t% G+ K( Y( |) r5 J$ V6 {# ]( h
DNS服务器和DNS解析者之间的区别是DNS解析者是仅仅针对解析互联网主机名。DNS解析者可以是未授权DNS域名的只缓存DNS服务器。你可以让DNS 解析者仅对内部用户使用,你也可以让它仅为外部用户服务,这样你就不用在没有办法控制的外部设立DNS服务器了,从而提高了安全性。当然,你也 可以让DNS解析者同时被内、外部用户使用。3 a3 t+ Y4 z1 U2 f. ?5 _
( m3 y: A. B& R3 Z8 Z( p7 ~ 5.保护DNS不受缓存污染, l7 m: M1 J# g* n
! j; s7 \8 B7 G) [2 ?! u8 J( T DNS缓存污染已经成了日益普遍的问题。绝大部分DNS服务器都能够将DNS查询结果在答复给发出请求的主机之前,就保存在高速缓存中。DNS高速缓存 能够极大地提高你组织内部的DNS查询性能。问题是如果你的DNS服务器的高速缓存中被大量假的DNS信息“污染”了的话,用户就有可能被送到恶意站点 而不是他们原先想要访问的网站。6 z$ O! x3 a- U9 h4 X+ S Q
4 k/ H0 A; A4 f M 绝大部分DNS服务器都能够通过配置阻止缓存污染。WindowsServer 2003 DNS服务器默认的配置状态就能够防止缓存污染。如果你使用的是Windows 2000 DNS服务器,你可以配置它,打开DNS服务器的Properties对话框,然后点击“高级”表。选择“防止缓存污染”选项,然后重新启动DNS服务器。
9 V4 D, O, r5 j) ]- g9 Y ^
4 t' h) P: \& s4 M 6.使DDNS只用安全连接4 r; @2 G# A$ q* [4 B9 y5 U
% b" f5 s' P" P6 K) g 很多DNS服务器接受动态更新。动态更新特性使这些DNS服务器能记录使用DHCP的主机的主机名和IP地址。DDNS能够极大地减轻DNS管理员的管理费用 ,否则管理员必须手工配置这些主机的DNS资源记录。
) `6 y: C0 P% i+ X
3 M1 Y m2 S' H; _: _ 然而,如果未检测的DDNS更新,可能会带来很严重的安全问题。一个恶意用户可以配置主机成为台文件服务器、Web服务器或者数据库服务器动态更新 的DNS主机记录,如果有人想连接到这些服务器就一定会被转移到其他的机器上。
, X. A4 E; U1 C" {8 p5 X/ @
2 d( z( g9 F$ X& H S" e 你可以减少恶意DNS升级的风险,通过要求安全连接到DNS服务器执行动态升级。这很容易做到,你只要配置你的DNS服务器使用活动目录综合区 (Active Directory Integrated Zones)并要求安全动态升级就可以实现。这样一来,所有的域成员都能够安全地、动态更新他们的DNS信息。
+ Q; O$ t0 Q- g6 J' P9 ~. L$ Q
2 z- e9 l0 V% ~1 u8 g% b7 v$ N 7.禁用区域传输
9 i' o) a& Y |6 s, u2 f' ^) W/ c$ u5 ^6 G: B/ j: M. r2 Q
区域传输发生在主DNS服务器和从DNS服务器之间。主DNS服务器授权特定域名,并且带有可改写的DNS区域文件,在需要的时候可以对该文件进行更新 。从DNS服务器从主力DNS服务器接收这些区域文件的只读拷贝。从DNS服务器被用于提高来自内部或者互联网DNS查询响应性能。
H4 A) a! Y/ ?0 {0 n, ^! x( \
* q J! Y1 E: A 然而,区域传输并不仅仅针对从DNS服务器。任何一个能够发出DNS查询请求的人都可能引起DNS服务器配置改变,允许区域传输倾倒自己的区域数据 库文件。恶意用户可以使用这些信息来侦察你组织内部的命名计划,并攻击关键服务架构。你可以配置你的DNS服务器,禁止区域传输请求,或者仅允 许针对组织内特定服务器进行区域传输,以此来进行安全防范。
$ E& r( c% G) S* y% s. G9 Z
+ W T* O$ P& C7 o; I; p6 }! F: [, I+ A 8.使用防火墙来控制DNS访问- o: ]. J. Y" @. _" `0 a
7 F5 ^: T/ K" A
防火墙可以用来控制谁可以连接到你的DNS服务器上。对于那些仅仅响应内部用户查询请求的DNS服务器,应该设置防火墙的配置,阻止外部主机连接 这些DNS服务器。对于用做只缓存转发器的DNS服务器,应该设置防火墙的配置,仅仅允许那些使用只缓存转发器的DNS服务器发来的查询请求。防火墙策略设置的重要一点是阻止内部用户使用DNS协议连接外部DNS服务器。2 u3 Q6 U/ X9 d) { \0 H! H0 }5 B
; q% V* k' g5 V" k A2 | 9.在DNS注册表中建立访问控制
' O5 K9 Q: ^6 |/ n" t
; A, R; i' m8 w+ I 在基于Windows的DNS服务器中,你应该在DNS服务器相关的注册表中设置访问控制,这样只有那些需要访问的帐户才能够阅读或修改这些注册表设置。
- e1 g G. W5 t; Q5 Q+ D- N' d' V
9 S0 \- T; @! b( K. c- x% R* A HKLM\CurrentControlSet\Services\DNS键应该仅仅允许管理员和系统帐户访问,这些帐户应该拥有完全控制权限。5 m4 f. ?$ |6 ^6 N" p2 D8 t
" x; ]4 A4 D$ h5 _0 Q
10.在DNS文件系统入口设置访问控制8 p/ U% o1 b2 f) S( z1 |
- I, @# w e) @+ A4 h& ` 在基于Windows的DNS服务器中,你应该在DNS服务器相关的文件系统入口设置访问控制,这样只有需要访问的帐户才能够阅读或修改这些文件。: y# Z/ ?) R& W) K
* x: B* `1 Q& z %system_directory%\DNS文件夹及子文件夹应该仅仅允许系统帐户访问,系统帐户应该拥有完全控制权限。 |
|