在CentOS中配置DNS服务器



尚建贞 朱富丽



(河南商业高等专科学校,河南  郑州450044)



 



    摘  要  文中详细介绍了CentOS操作系统中DNS服务器的配置



    关键词  CentOSl;DNS



 



 




1  引言



    Community Enterprise Operating System简称CentOS,是 RHEL(Red Hat Enterprise Linux)源代码再编译的产物,而且在 RHEL 的基础上修正了不少已知的 Bug 。相对于其他 Linux 发行版,CentOS具有很多优点,例如:稳定的环境,长期的升级更新支持,保守性强,在大规模的系统应用中也能够发挥很好的性能等。使用CentOS不需要向Red Hat支付任何产品和服务的费用,还可以进行升级服务,并且不涉及版权问题。正因为CentOS在众多的RHEL的克隆版本中具有如此优秀的品质,在企业级的需求中被广泛使用。



    本文将详细介绍在CentOS 5.5上构建DNS域名服务的方法。



2  配置前准备



    首先准备一台安装了CentOS 5.5的服务器,作为DNS master server,笔者设定的地址为:211.84.209.208;再准备一台安装Windows XP操作系统的客户机,配置完成后做为测试DNS服务器使用。本文所使用的域名服务软件为BIND 9.3,如果不确定系统是否已安装了相关软件包,可用rpm –qa | grep bind命令进行查询。软件安装后,会生成相应的目录和文件,下面就所用到的文件目录进行说明:



/var/named/chroot/etc                 //存放named.conf和named.rfc1912.zones       


        /var/named/chroot/var/named   //存放.zone和arpa       


        /var/log/messages                      //查看配置过程中的错误



 



3  主配置文件named.conf的配置



    进入/var/named/chroot/etc/目录下,由于安装了上面的软件包,这个目录下就默认会生成一个named.caching- nameserver.conf文件,把这个文件拷贝一个副本作为主配置文件:



   


[root@localhost]# cd /var/named/chroot/etc/       


            [root@localhost etc]# cp -p named.caching-nameserver. conf named.conf

    现在就可以用named.conf文件进行配置了,用vi命令打开这个文件,需要修改配置如下:



  

options {       


            listen-on port 53 { any;};       


            listen-on-v6 port 53 {::1;};       


            directory    "/var/named";       


            dump-file           "/var/named/data/cache_dump.db";       


                statistics-file "/var/named/data/named_stats.txt";       


                memstatistics-file "/var/named/data/named_mem_stats.txt";       


            allow-query     { any;};       


            allow-query-cache { any;};//注意一定要修改这个参数,否则只能在本机测试通过,       


            //在客户机上测试通不过       


            logging {       


                channel default_debug {       


                        file "data/named.run";       


                        severity dynamic;       


                };       


            };       


            view localhost_resolver {       


            match-clients        { any;};       


            match-destinations { any;};       


            recursion yes;       


            include "/etc/named.rfc1912.zones";       


            };



    在这个目录下再配置一个用来增加正反向根域的文件(named.rfc1912.zones),用vi命令打开后,在文件最后添加以下内容:



   

//2010-09-26 配置测设DNS添加       


            zone "benet.com" IN{       


                   type master;       


                   file "benet.com";       


                   allow-update { none;};       


            };       


            zone "209.84.211.in-addr.arpa" IN {       


                   type master;       


                   file "211.84.209.rev";       


                   allow-update { none;};



4  配置正反解析文件



    由于安装了chroot包,需要配置的正反解文件都在/var/named/chroot/var/named/目录下,而且在此目录下也提供有正反解的模板文件,我们拷贝一个副本进行配置,具体命令如下:



   

[root@localhost named]# cp -p localdomain.zone benet.com       


            [root@localhost named]# cp -p named.local 211.84.209.rev

    



    注意在使用copy命令时加参数P,不然有可能启动不了named服务。现在就可以编辑正解(benet.com)、反解(211.84.209.rev)这两个文件了。



    正向解析文件(benet.com)配置如下:



$TTL          86400       


        @               IN SOA     localhost root (       


                                                       42               ;serial (d. adams)       


                                               3H              ;refresh       


                                               15M           ;retry       


                                               1W             ;expiry       


                                               1D )                 ;minimum       


             IN NS         localhost       


        localhost     IN A          127.0.0.1       


        www         IN A     211.84.209.208



反向解析文件(211.84.209.rev)配置如下:




$TTL          86400       


        @     IN    SOA    localhost. root.localhost.  (       


        1997022700;Serial       


                              28800     ;Refresh       


                              14400     ;Retry       


                              3600000   ;Expire       


                              86400 )   ;Minimum       


                IN      NS      localhost.       


        208     IN      PTR     www.benet.com.

5 修改本机的NDS,进行域名解析测试



    首先修改我们所配置服务器的DNS地址为本机地址,即211.84.209.208,方法如下:编辑本机的/etc/resolv.conf文件,在文件里面添加一行:nameserver 211.84.209.208即可。然后将我们所配置的域名服务启动起来:service named start,就可以在客户机测试。



    将安装Windows xp操作系统的客户机的DNS设置为我们所配置的服务器地址11.84.209.208,然后就可以用nslookup命令进行测试。



    先测试正反解析,结果如图1所示。





 



图1


 




    用其他域名和ip地址进行测试,结果如图2所示。



    测试结果显示正反向解析都无问题,测试通过。



    到这里,DNS服务器的配置和测试都已成功完成,但我们在网络中具体部署DNS服务器的时候,一定要考虑安全问题。服务器物理实体的安全之外,主要是软件的安全,包括我们所使用的CentOS操作系统的安全,服务器配置的安全等。我们可以通过定期对操作系统升级打补丁,设置系统的防火墙,设置域名服务器的查询限制,禁止未授权的域名服务器更新本服务器等方法来加强软件安全,杜绝安全隐患。





 



图2