中国移动DNS服务器安全配置手册

上传人:尘*** 文档编号:104497930 上传时间:2022-06-10 格式:DOCX 页数:31 大小:223.67KB
返回 下载 相关 举报
中国移动DNS服务器安全配置手册_第1页
第1页 / 共31页
中国移动DNS服务器安全配置手册_第2页
第2页 / 共31页
中国移动DNS服务器安全配置手册_第3页
第3页 / 共31页
点击查看更多>>
资源描述
密 级:文档编号:项目代号:中国移动企业信息化系统DNS服务器安全配置手册Version *1.*0中国移动通信有限公司二零零四年十一月拟 制:审 核:批 准:会 签:标准化:版本控制版本号日期参与人员更新说明分发控制编号读者文档权限与文档的主要关系1创建、修改、读取负责编制、修改、审核2批准负责本文档的批准程序3标准化审核作为本项目的标准化负责人,负责对本文档进行标准化审核4读取5读取1 常见的DNS攻击61.1 区域传输61.2 版本发现61.3 DoS攻击61.4 缓存破坏(cache poisoning)71.5 缓冲区溢出71.6 其他攻击技术72 现有的DNS攻击防范措施82.1 限制区域传输82.2 限制版本欺骗82.3 减轻DoS所造成的损失82.4 防御缓存破坏82.5 防御缓冲区溢出92.6 应用Bogon过滤92.7 Split DNS92.8 用路由器和防火墙做DNS的安全防护93 BIND安全配置103.1 配置环境:103.2 启动安全选项103.3 配置文件中的安全选项103.3.1 安全日志文件113.3.2 隐藏版本信息113.3.3 禁止DNS域名递归查询113.3.4 增加出站查询请求的ID值的随机性123.3.5 限制对DNS服务器进行域名查询的主机123.3.6 限制对DNS服务器进行域名递归查询的主机123.3.7 指定允许哪些主机向本DNS服务器提交动态DNS更新123.3.8 限制对DNS服务器进行区域记录传输的主机133.3.9 指定不接受哪些服务器的区域记录传输请求133.3.10 一些资源限制选项133.3.11 定义ACL地址名143.3.12控制管理接口143.4 通过TSIG对区域记录传输进行认证和校验153.4.1 用TSIG签名来进行安全的DNS数据库手工更新153.4.2 对区域记录传输(自动或手工)进行TSIG签名163.5 实现BIND的chroot173.5.1 chroot虚拟根环境173.5.2 操作方法184 Windows 2000 DNS安全配置(MSDNS)214.1 开启日志功能224.2 定期更新根服务器信息234.3 禁止区域文件动态更新244.4 禁止区域传输254.5 其它设置265 安全检查列表27编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第31页 共31页1 常见的DNS攻击目前DNS受到的网络攻击大致有这么几种:区域传输、版本发现、DoS、高速缓存破坏、缓冲区溢出等。1.1 区域传输进行区域传输攻击DNS的方法是执行无限制的区域传输或捏造许可证,造成的后果是主管的域名信息泄露。区域传输一般用于主DNS服务器和辅DNS服务器之间的数据同步,DNS服务器可以从主服务器获取最新区数据文件的副本,也就可以获得整个授权区域内的所有主机信息。一旦这些信息泄漏,攻击者就可以根据它轻松地推测主服务器的网络结构,并从这些信息中判断其功能或发现那些防范措施较弱的机器。1.2 版本发现发现软件版本有助于攻击者探测服务器。利用版本发现攻击DNS的方法是查询版本文件,造成的后果是软件版本泄密。软件版本信息很少被用到,应该被改变或清空。BIND(Berkeley Internet Name Domain)DNS 守护进程会响应许多dig版本查询,允许远程攻击者识别它的版本。1.3 DoS攻击Dos是Denial of Service的缩写,意为拒绝服务。DoS攻击是网络上一种简单但很有效的破坏性攻击手段,其中SYN Flood攻击是最为常见的DoS攻击方式。SYN Flood攻击就是攻击者利用伪造的IP地址,连续向被攻击的服务器发送大量的SYN包。被攻击的服务器收到这些SYN包后,连续向那些虚假的客户机(伪造的IP地址指向的客户机)发送ACK确认包。很显然,服务器是不会收到ACK确认包的,于是服务器就只能等待了。当服务器因超时而丢弃这个包后,攻击者虚假的SYN包又源源不断地补充过来。在这个过程中,由于服务器不停顿地处理攻击者的SYN包,从而正常用户发送的SYN包会被丢弃,得不到处理,从而造成了服务器的拒绝服务。1.4 缓存破坏(cache poisoning)这是DNS面临的一种很普遍的攻击它利用了DNS的缓存机制使某个名字服务器在缓存中存入错误的数据。当某名字服务器A收到递归查询请求,而A的数据库内没有相应的资源记录,那么它就会转发给名字服务器B,B做出应答,把回答放在报文的回答区中,同时又会在附加区中填充一些和查询不太相关的数据,A接收这条应答报文,而且对附加区中的数据不做任何检查,直接放在缓存中。这样使得攻击者可以通过在B中存放一些错误的数据,让A把这些错误的数据存放在缓存中。在这些数据的生存期TTL内,A又可能会把它们发送给别的服务器,导致更多的服务器缓存中毒。虽然缩短缓存数据的TTL能减小受害面,但这种方法会给服务器的性能带来负面影响。1.5 缓冲区溢出和任何其他应用程序一样,DNS也容易出现内存溢出。授权DNS服务器可以和Internet的任何系统交互,所以DNS已经成为缓冲区溢出漏洞最普遍的受害者。1.6 其他攻击技术如果攻击者可以嗅探网络流量,后果将是不可预料的。欺骗区域传输、欺骗查询应答和中间人攻击都很容易进行。网络泄密是较高风险的漏洞。对于一次恶意攻击来说,攻击一台DNS就像逆向工作。通过中间人进行的DNS查询欺骗完全可以被攻击者控制。查询流量通常是由UDP完成的,并且只交换公开信息。2 现有的DNS攻击防范措施DNS服务器最常见的安全措施就是限制谁能访问它:服务器只需要和有限的终端客户端通信。限制访问可以阻止未授权用户使用服务器,从而有可能阻止查看漏洞级别的行为。为了尽量减少暴露的漏洞,除了打开有数据进出的授权服务器的UDP端口53外,所有的端口都应该禁止Internet访问。在一些特殊情况下,TCP端口53也需要打开,但应该尽可能将其关闭。2.1 限制区域传输可以禁用区域传输,而使用rsync软件(http:/rsync.samba.org)进行安全的文件同步。在DNS守护进程外部,通过加密通道进行区域文件同步,可以很好地分离守护进程操作和数据同步操作。如果区域传输被禁止,攻击者将接收到传输失败的消息。2.2 限制版本欺骗通过相应的设置限制版本欺骗。2.3 减轻DoS所造成的损失许多操作系统特性可以遏制SYN包攻击,并且许多类似的网络设备可以验证包和丢掉欺骗包。防御DoS攻击的最好方法是采用事故反应计划和IDS传感器数据。2.4 防御缓存破坏缓存破坏很容易防御。所有DNS守护进程都可以选择关闭缓存。如果缓存不能用,对服务器所做出的虚假回应就没有意义。大多数最新的守护进程已经有了针对缓存破坏的补丁。2.5 防御缓冲区溢出许多工具可以防止未授权溢出。防缓冲区溢出的编辑器如stackguard(http:/www.immunix.org/products.html#stackguard)应该和最新的DNS守护进程相结合。但是,虽然在chroot环境中运行守护进程和限制访问可以限制暴露点,真正阻止缓冲区溢出需要一个从底层开始就安全的平台。一个安全的操作系统和守护进程是减少缓冲区溢出的最好的工具。2.6 应用Bogon过滤拦截无效和无用的Internet IP地址,可以减少DoS攻击时的网络负担,有助于通知网管关注网络问题。在网络边界,防火墙和应用程序访问控制列表内部,应用Rob Thomas的Bogon List,可以可靠地清除不需要的网络流量,并防止滥用网络。Bogon List见: 。2.7 Split DNS 采用Split DNS技术把DNS系统划分为内部和外部两部分,外部DNS系统位于公共服务区,负责正常对外解析工作:内部DNS系统则专门负责解析内部网络的主机。当内部要查询Internet上的域名时。就把查询任务转发到外部DNS服务器上,然后由外部DNS服务器完成查询任务。把DNS系统分成内外两个部分的好处在于Internet上其它用户只能看到外部DNS系统中的服务器,而看不见内部的服务器。而且只有内外DNS服务器之间才交换DNS查询信息,从而保证了系统的安全性。采用这种技术可以有效地防止信息泄漏。2.8 用路由器和防火墙做DNS的安全防护采用一些网络及安全设备能更有效的保护DNS的安全。如果在没有防火墙的情况下,可以直接在路由器上设置ACL访问控制列表,只允许对DNS的TCP和UDP的53端口进行访问,其余访问一律丢弃;如果采用防火墙来保护则能起到更好效果,同样的对DNS的访问除了TCP和UDP的53端口开放之外,拒绝其他的所有访问。同时,当前主流的防火墙如CheckPoint和Netcreen等都有防DNS欺骗的功能,即使其他非DNS的访问或攻击行为通过封装成53端口伪造成正常的DNS请求,防火墙也可以对这些虚假请求进行检查,只要是不符合DNS服务的标准,则一律过滤,保证攻击行为无法通过53端口来穿透防火墙。3 安全配置DNS守护进程3.1 加固操作系统安装任何守护进程之前,安全可靠的操作系统应该是一个先决条件。在UNIX/LINUX系统上,chroot是一种减小系统暴露程度来降低由后台进程引起的安全问题的有效方法。chroot是一个相当简单的概念,运行在chroot封闭环境中的应用程序,不能和封闭环境外的文件系统的任何部分进行交互。在这样的环境中运行BIND,能够增加DNS系统的安全性。对于Windows系统来说,应该及时安装Windows系统关键安全更新补丁,防止利用Windows操作系统漏洞而造成的攻击。3.2 BIND安全配置3.1 、配置环境: FreeBSD 4.1-RELEASE;BIND 8.2.3。3.2、 启动安全选项named进程启动选项:-r:关闭域名服务器的递归查询功能(缺省为打开)。该选项可在配置文件的options中使用recursion选项覆盖。-u 和-g :定义域名服务器运行时所使用的UID和GID。这用于丢弃启动时所需要的root特权。-t :指定当服务器进程处理完命令行参数后所要chroot()的目录。3.3 、配置文件中的安全选项Solais、FreeBSD、Linux等系统,Bind的配置文件为:/etc/named.conf3.3.1、 安全日志文件操作方法:假如希望记录安全事件到文件中,但同时还希望保持原有的日志模式,可以添加以下内容: logging channel my_security_channel file my_security_file.log versions 3 size 20m; severity info; ; category security my_security_channel; default_syslog; default_debug; ; 其中my_security_channel是用户自定义的channel名字,my_security_file.log是安全事件日志文件,可包含全路径(否则是以named进程工作目录为当前目录)。 安全事件日志文件名为my_security_file.log,保存三个最近的备份 (my_security_file.log0、my_security_file.log1、my_security_file.log2), 日志文件的最大容量为20MB,(如果达到或超这一数值,直到该文件被再次打开前,将不再记录任何日志消息。缺省(省略)时是没有大小限制的。) 操作结果:日志记录完整,所有异常问题都会在日志文件记录。3.3.2、 隐藏版本信息操作方法:在options节中增加自定义的BIND版本信息,可隐藏BIND服务器的真正版本号。 version Who knows?; / version 9.9.9; 操作结果:此时如果通过DNS服务查询BIND版本号时,返回的信息就是Who knows?,隐藏了真实的版本号。3.3.3、 禁止DNS域名递归查询操作方法要禁止DNS域名递归查询,在options(或特定的zone区域)节中增加: recursion no; fetch-glue no;操作结果防止了DNS域名的递归查询。 3.3.4、 增加出站查询请求的ID值的随机性操作方法在options节中增加: use-id-pool yes; 则服务器将跟踪其出站查询ID值以避免出现重复,并增加随机性。注意这将会 使服务器多占用超过128KB内存。(缺省值为no操作结果服务器将跟踪其出站查询ID值以避免出现重复,并增加随机性。注意这将会 使服务器多占用超过128KB内存,缺省值为no。) 3.3.5、 限制对DNS服务器进行域名查询的主机操作方法在options(或特定的zone区域)节中增加: allow-query ; address_match_list是允许进行域名查询的主机IP列表,如1.2.3.4; 5.6.7/24;。操作结果限制对DNS服务器进行域名查询的主机。 3.3.6、 限制对DNS服务器进行域名递归查询的主机操作方法在options(或特定的zone区域)节中增加: allow-recursion ; address_match_list是允许进行域名递归查询的主机IP列表,如 1.2.3.4; 5.6.7/24;。 操作结果限制了对DNS进行域名递归查询的主机。 3.3.7、 指定允许哪些主机向本DNS服务器提交动态DNS更新操作方法:在options(或特定的zone区域)节中增加: allow-update ; address_match_list是允许向本DNS服务器提交动态DNS更新的主机IP列表,如 1.2.3.4; 5.6.7/24;。 缺省时为拒绝所有主机的提交。操作结果 缺省时为拒绝所有主机的提交,完成操作后只有指定的主机可以提交动态DNS更新。 3.3.8、 限制对DNS服务器进行区域记录传输的主机操作方法在options(或特定的zone区域)节中增加:allow-transfer ; address_match_list是允许进行区域记录传输的主机IP列表,如1.2.3.4; 5.6.7/24;。操作结果只有特定的主机可以进行区域传输,降低了受区域传输攻击的风险。 3.3.9、 指定不接受哪些服务器的区域记录传输请求操作方法在options(或特定的zone区域)节中增加: blackhole ; address_match_list是不接受区域记录传输请求的主机IP列表,如1.2.3.4; 5.6.7/24;。 操作结果不允许特定的主机 进行区域传输,降低了受区域传输攻击的风险。3.3.10、 一些资源限制选项l 操作方法不同用户可根据实际情况灵活设置,但一定要注意不当的设置会损失DNS服务的性能。 coresize ; / core dump的最大值。缺省为default。 datasize ; / 服务器所使用的最大数据段内存。缺省为 default。 files ; / 服务器能同时打开的最大文件数。缺省为 / unlimited(不限制)。 / (注意,并非所有操作系统都支持这一选项。) max-ixfr-log-size ; / (目前版本暂不使用。)限制增量区域记录传输时会话日志的大小。 stacksize ; / 服务器所使用的最大堆栈段内存。缺省为 default。 操作结果 不同用户可根据实际情况灵活设置,但一定要注意不当的设置会损失DNS服务的性能。3.3.11、 定义ACL地址名操作方法即用于上面的。注意,如果要使用这里定义的列表名,必须先定义,后使用! 例如: acl intranet 192.168/16; ; acl partner !172.16.0.1; 172.16/12; / 除172.168.0.1外172.16.0.0/12网络中其它主机 ; BIND已内置以下四个ACL: all / 允许所有主机 none / 禁止所有主机 localhost / 本机的所有网络接口 localnets / 本机所在网络 操作结果此操作不会对系统产生不良影响。3.3.12、控制管理接口BIND域名服务器的一个有用功能 操作方法 控制管理接口controls节语法格式: controls inet ip_addr port ip_port allow ; ; unix path_name perm number owner number group number; ; controls节提供管理接口。如果使用第一种(inet),则在指定IP(接口)和端口上监听,但只允许在allow中限定允许与其连接的IP地址列表。如果使用第二种(unix),则产生一个FIFO的控制管道,权限、属主和用户组都由其参数限定。 操作结果上述操作建议在正确配置时不会对系统造成不良影响,但建议谨慎使用。3.4、 通过TSIG对区域记录传输进行认证和校验 对区域传输进行认证和校验可以降低DNS服务器遭受区域传输攻击的风险。 首先确保BIND域名服务器软件已更新到最新版本。 在BIND 8.2+中,能够使用事务签名(Transaction Signatures,即TSIG!) 来对区域记录数据进行验证和校验。它要求在主域名服务器和辅助域名服务器上配置好加密密钥,并通知服务器使用该密钥与其它域名服务器通讯。(注意,TSIG的使用要求域名服务器必须进行时钟同步。) 3.4.1、 用TSIG签名来进行安全的DNS数据库手工更新如果需要用TSIG签名来进行安全的DNS数据库手工更新,具体操作步骤很简单:3.4.1.1、 使用BIND自带的dnskeygen工具生成TSIG密钥。 # dnskeygen -H 128 -h -n tsig-key.则会生成两个文件。Ktsig-key.+157+00000.key内容如下:tsig-key. IN KEY 513 3 157 awwLOtRfpGE+rRKF2+DEiw= ;Kvip-key.+157+00000.private内容如下:Private-key-format: v1.2 Algorithm: 157 (HMAC) Key: awwLOtRfpGE+rRKF2+DEiw= 。注意这些密钥都已经过BASE64编码了。3.4.1.2 主域名服务器配置文件的相关内容将它们放到本地域名服务器的配置文件中。例如:key tsig-key. algorithm hmac-md5; secret awwLOtRfpGE+rRKF2+DEiw=; ; zone . . allow-update key tsig-key. ; ; 重启named守护进程。 然后将这两个密钥文件复制到客户端系统(或辅助域名服务器),例如为/var /named/tsig目录。最后运行如下命令即可: nsupdate -k /var/named/tsig:tsig-key. 3.4.2、 对区域记录传输(自动或手工)进行TSIG签名如果需要对区域记录传输(自动或手工)进行TSIG签名,则:3.4.2.1、 用dnskeygen生成TSIG密钥方法同4.1.1。 3.4.2.2、 主域名服务器配置文件的相关内容 / 定义认证的方法和共享密钥 key master-slave algorithm hmac-md5; secret mZiMNOUYQPMNwsDzrX2ENw=; ; / 定义辅助域名服务器的一些特性 server 192.168.8.18 transfer-format many-answers; keys master-slave; ; ; / 区域记录定义 zone type master; file ; allow-transfer 192.168.8.18; ; ; 3.4.2.3、 辅助域名服务器配置文件的内容(节选) / 定义认证的方法和共享密钥 key master-slave algorithm hmac-md5; secret mZiMNOUYQPMNwsDzrX2ENw=; ; / 定义与主域名服务器通讯时的一些特性 server 192.168.8.19 transfer-format many-answers; keys master-slave; ; ; / 区域记录定义 zone type slave; file ; masters 192.168.8.19; ; allow-transfer none; ; ; 3.5、 实现BIND的chroot3.5.1 chroot虚拟根环境CHROOT虚拟根环境CHROOT就是Change Root,即虚拟根环境,也就是改变程序执行时所参考的根目录位置。 chroot基本上重定义了一个程序的运行环境。更确切地说,它重定义了一个程序(或登录会话)的“ROOT”目录或“/”。 也就是说,对于chroot了的程序或shell来说,chroot环境之外的目录是不存在的。一般的目录结构是: 一般的目录结构/ /bin /sbin /usr/bin /home CHROOT的目录结构: Chroot的目录结构/bind/ /bind/bin /bind/usr/bin /bind/home CHROOT的优点限制使用者所能执行的程序,如setuid程序。 防止使用者存取某些特定文件,如/etc/passwd。 防止入侵者运行/bin/rm -rf /。 提供Guest服务以及处罚破坏者。 增强系统的安全3.5.2 操作方法以FreeBSD系统平台为例:步骤一:BIND-8的最新源代码版本获取和安装 请到ISC FTP站点下载BIND的最新版本。 BIND 8:http:/www.isc.org/products/BIND/bind8.html BIND 9:http:/www.isc.org/products/BIND/bind9.html 步骤二:构造静态(static)的named和named-xfer二进制文件 在编译和安装后,你需要构造可执行文件的静态链接版本。只要对%BIND%/src/port/freebsd目录下的Makefile.set文件稍加修改后即可。 修改文件内容: CDEBUG= -O2 -g 替换为: CDEBUG= -O2 -static 切换到BIND的源代码路径,执行make clean和make命令。在下面的步骤中 将会把这些文件复制到chroot()目录下。 # cd /tmp/bind/src # make clean ; make 本步骤构造的静态链接执行文件在运行时无需装载动态链接库。在chroot()环 境中,这种“独立”可执行文件可避免出现缺少链接库文件问题。它在chroot()环 境中无需任何静态链接库,可使服务配置简单化。其它所有的网络守护进程也可以 编译和使用这种静态链接版本。 步骤三:构造BIND目录 为chroot()环境构造BIND目录。这个目录将在chroot()环境中被BIND当作系统根目录。在这里我使用/chroot/bind作为chroot后的根目录。 # cd /chroot/bind # mkdir /chroot # mkdir /chroot/dev # mkdir /chroot/etc # mkdir /chroot/etc/namedb # mkdir /chroot/usr # mkdir /chroot/usr/sbin # mkdir /chroot/var # mkdir /chroot/var/run 需要复制以下文件到其下的相应子目录中,和进行一些必要的处理: # cp /etc/namedb/named.conf /chroot/bind/etc/ # cp /etc/localtime /chroot/bind/etc/ # grep bind /etc/group /chroot/bind/etc/group # cp -R /etc/namedb/ /chroot/bind/etc/namedb/ # mknod /chroot/bind/dev/null c 2 2 # chmod 666 /chroot/bin/dev/null # cp /tmp/bind/src/bin/named/named /chroot/bind/usr/sbin/ # cp /tmp/bind/src/bin/named-xfer/named-xfer /chroot/bind/ 另外还可根据需要指定日志记录目录(如/var/log),请参考下面的章节或 named.conf的手册页。 步骤四:添加bind用户和组(如果没有的话。如果已经有bind或named之类的用户和组,请跳过本步骤。) 在/etc/passwd和/etc/group文件中添加bind用户和组。它们是DNS服务器运行时的UID/GID。 此时,可以到chroot环境中执行chown -R bind.bind /chroot/bind/etc/ namedb命令。这样当向系统发送中断信号(kill -INT 时,named进程能够保存 服务器缓存和统计信息。如果该目录为root所有则named进程无法将输出写到目录中,但不会影响named服务器功能。另一个选择是仅改变目录权限(使named用户具有写权限),而属主仍然是root。这种方法也是可行的,但必须小心设置,确保其它用户不会修改named记录。* 重要警告* 不要用一个已存在的UID/GID(如nobody)运行named。记住,以chroot环境中使用任何已存在的UID/GID都可能会影响到服务的安全性。必须养成在chroot环境中为每一个守护进程提供独立的UID/GID的习惯。 步骤五:其它必要调整 如果在named.conf中还指定了另外的目录和文件,也要相应地在chroot()环境中(在本例中即/chroot/bind/目录)进行设置。 步骤六:调试 1、终止系统中原有的syslogd和named守护进程。 # killall syslogd named 2、用适当的参数重新启动syslogd守护进程。 # syslogd -s -p /chroot/bind/var/run/log 3、用适当参数重新启动named守护进程。 # /chroot/bind/named -u bind -g bind -t /chroot/bind 4、检查syslogd/named守护进程、监听端口是否正常,和/var/log/messages文件中named进程启动时是否正常。 # ps auwx|grep syslogd root 5896 0.0 1.7 896 508 ? Ss 9:44PM 0:00.10 syslogd -s -p /chroot/bind/var/run/log # ps auwx|grep named bind 5941 0.0 4.9 1652 1444 ? Is 9:52PM 0:00.01 /chroot/bind/usr/sbin/named -u bind -g bind -t /chroot/bind # netstat -an|grep 53 tcp4 0 0 127.0.0.1.53 *.* LISTEN tcp4 0 0 192.168.8.19.53 *.* LISTEN udp4 0 0 127.0.0.1.53 *.* udp4 0 0 192.168.8.19.53 *.* 步骤七:修改系统启动脚本 对于FreeBSD系统,在/etc/rc.conf文件中增加如下内容即可: syslogd_enable=YES # 如果希望禁止向外发送日志,将-s换成-ss。 syslogd_flags=-s -p /chroot/bind/var/run/log named_enable=YES named_program=/chroot/bind/usr/sbin/named named_flags=-u bind -g bind -t /chroot/bind 注:如果在其它系统平台,如OpenBSD、Linux、Solaris,则可能会稍有不同。 主要是不同平台上的syslog实现不尽相同。例如对于OpenBSD和Linux系统,打开日 志别名socket的命令是syslogd -a /chroot/bind/var/run/log,而Solaris的 syslogd守护进程则不支持别名。因此Solaris系统平台上的chroot需要通过另外的方法实现。4 Windows 2000MS DNS安全配置(MSDNS)MSDNS可以根据几种特殊的需求实施。依据物理网络位置和想要的管理方法,有4种常见的实施方式(注意不推荐在企业外部环境实施MSDNS,尤其是在有活动目录时):应用文本区域文件的内部解析和活动目录集成的内部解析和活动目录集成的外部解析应用文本区域文件的外部解析。根据基础体系的需要,直接安装所需的服务。安装文本区域文件,要在最初的DNS服务器向导中选择“标准主要区域”。如图4-1。图4-1 Windows 2000 DNS 服务器安装安装基于文本文件的DNS服务,修改几个选项,包括日志、根服务器和区域传输,可以增强系统,防止大多数的恶意篡改。4.1 开启日志功能因为每个网络的基础体系结构都不同,如何选择合适的日志水平取决于系统管理员,如图4-2。对不常见的DNS行为进行记录,例如Write Through, Notify, TCP或Full Packets,会使日志审计的执行时间间隔更加符合实际。而常见的DNS行为,例如UDP,Update和Query,应该只在调试DNS服务器时,或者在服务器的流量非常少时才予以记录。图4-2 DNS日志4.2 定期更新根服务器信息根服务器经常会发生变化,例如,b.root-的基本IP地址在2004年1月变为:192.228.79.201。DNS系统管理员应该跟踪最新的变化(http:/www.root-servers.org/ ),尽快更新根服务器的IP。如图4-3。图4-3 更新根服务器信息4.3 禁止区域文件动态更新完成了最初的服务配置后,应该单独查看每个区域文件。每个区域的优先级应该重新考虑,并进行相应的修改。区域文件可以动态更新。这个选项默认是禁用的,通常不应该被更改。如图4-4。图4-4 禁用区域文件动态更新对于内部DNS解析,常见的部署是集成DHCP服务器和活动目录。和活动目录的集成非常稳健。在实施之前,应该全面彻底地检验活动目录的安全性。如果需要运行外部的解析服务器,推荐使用文本区域文件。文本区域文件位于%SystemRoot%DNS。除了SYSTEM组外,DNS文件夹应该配置成拒绝所有访问。除了修改目录权限,还要隐藏区域文件位置。对HKEY_LOCAL_MACHINESystemCurrentControlSetServicesDNS这个注册表键进行修改,只允许ADMINISTRATOR和SYSTEM组具有完全控制权。4.4 禁止区域传输要限制一个域的区域传输,右击域,选择Properties,然后单击Zone Transfer标签,如图4-5。要禁用某个域的区域传输,需要清除Allow zone transfer复选框。图4-5 禁用区域传输4.5 其它设置在Windows 环境下,应该特别重视对一些设置进行校验。手动验证区域文本文件。许多区域记录也许和Windows DNS兼容,但并不和其它守护进程兼容。Responsible Person应该包含符号,因为它和其它DNS服务不兼容。如图4-6。图4-6 Responsible person区域语法Windows 2000 DNS服务可以通过在控制面板中启动DNS服务,并配置成在重启时自动启动。增加区域记录可以通过右击Global DNS图标,然后选择Add Domain来完成。5 安全检查列表根据检查列表反复对细节进行检查,可能会发现遗漏的配置。安全检查DJBDNS安全配置列表的一个实例是RFC2870:Root Name Server Operational Requirements (http:/www.faqs.org/rfcs/rfc2870.html),它是所有根服务器在投入使用前都必须满足的要求。以下是一张所有守护进程和操作系统的通用列表。建立稳定的硬件环境确保系统运行的目的只有一个;验证系统有满足要求的处理器和RAM;讨论使用冗余数据存储的必要性;分配一个应急备份系统;制定数据备份和磁带轮换时间表;确保稳定的网络连接和必要的结构冗余。加固操作系统验证所有最新的操作系统补丁已安装;删除或关闭所有不必要的系统服务;只允许必要的用户访问系统;记录访问系统的用户;根据项目需求增加日志容量;启用网络时间协议(NTP)服务器;实施适当的23层网络安全计划;只通过加密的带外(OOB)管理端口,维护系统通信。安全安装守护进程校验后台软件的MD5校验和加固应用程序环境;尽可能实行chroot环境;确保守护进程账户不能登录访问;确保有服务失败通知程序;验证所有最新的守护进程补丁已经安装,并且补丁的MD5校验和正确;订阅新闻组/邮件列表,获得升级程序或漏洞风险的通知。配置DNS守护进程确保已经删除所有的多余的特性;实施守护进程ACL;限制或关闭区域传输;如果需要区域传输,确保它们通过加密协议运行;修改守护进程的版本响应;确保记录中使用的电子邮件联系信息有效。日志确保可以管理日志的大小;检验日志错误处理程序;定期监控日志,保留查询失败记录。监控数据维护一个监控数据基线统计;判断和了解将来的需求;检查为未来增长分配的预算。第 31 页 共 31 页
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!