浅谈配置Linux主域名服务器文件

假设要建立一个DNS服务器负责维护的区域abc.com,包含www主机、dns主机、mail主机以及ftp主机。在192.168.124.128这台服务器配置DNS,将www主机和ftp主机解析到192.168.124.129这个IP地址上,将mail主机解析到192.168.124.130这个IP地址上。首先在主配置文件中加入区域abc.com,并配置好rndc。

要想配置DNS服务器,首先来了解一下构成一个基本的域名解析系统所要包含的文件,DNS服务器要提供基本的服务功能需要包含以下6个文件:1.DNS主配置文件:/etc/named.conf2.DNS数据库文件:/var/named/named.ca3.本地正向解析文件:/var/named/localhost.zone,其中文件名任意,由named.conf 指定。4.本地反向解析文件:/var/named/127.0.0.zone ,其中文件名任意,由named.conf 指定。5.新增区域正向解析文件:/var/named/abc.com.zone,文件名任意,由named.conf 指定。

6.新增区域反向解析文件:/var/named/124.168.192.in-addr.arpa.zone ,文件名任意,由named.conf 指定,这里用IP做为标记。

上述6个文件是构建一台基本dns服务器所需的最基本的6个配置文件,默认情况下named.conf 在 /etc 目录下,其余5个文件都在 /var/named 目录下,为了安全的考虑,软件开发人员,开发了一个新的软件包,bind-chroot 软件包,所谓DNS chroot 功能,默认是将 /var/named/chroot 当成根目录,所以本来应该放置在 /etc 目录下的 named.conf 变成了 /var/named/chroot/etc 目录下。启用chroot功能后,所有的上述6个文件存放的位置应该如下:

DNS主配置文件: /var/named/chroot/etc/named.conf 。

DNS数据库文件: /var/named/chroot/var/named/named.ca 。

本地正向解析文件: /var/named/chroot/var/named/localhost.zone 。

本地反向解析文件: /var/named/chroot/var/named/127.0.0.zone 。

区域正向解析文件: /var/named/chroot/var/named/abc.com.zone 。

区域反向解析文件: /var/named/chroot/var/named/124.168.192.in-addr.arpa.zone 。

注意: 上面的最后两个新增区域的正向及反向解析文件,需要手工添加。注意添加的位置为 /var/named/chroot/var/named 目录。

配置过程:

一、查看bind 服务器主配置文件 named.conf 。

[root@localhost~]#vi  /var/named/chroot/etc/named.conf

named.conf 文件中,包含named服务的主要设置部分,根据设置功能不同,设置部分可分为许多不同类型,(如Zone   定义区域内容,每个区域中至少须存在一台DNS服务器;

Opitions   设置通用的服务器配置及其他选项默认值;

Key  指定验证和授权时使用的键值(key)信息;

Server  设置单个远程服务的特定配置选项;

Include 参照其他文件的内容;

Logging  定义记录文件内容及记录文件内容传送的对象 ;等。)

以区域zone 为主要内容,一个区域zone包括定义该区域zone的类型及对应的文件。DNS区域zone分5种类型:

Master   :     DNS主区域

Slave      :     DNS辅助区域是主区域的复制

Stub       :     类似于辅助区域,但只复制主区域中NS 记录

Forward  : 转发区域

Hint         :用来指定ROOT 服务器

二、添加新增正向解析区域及反向解析区域

在named.conf文件中添加如下代码,通知DNS服务器主程序,新增了两个区域,此时DNS服务器维护区域的数量将由2变成4 。可利用service named status  验证。

zone "abc.com" {

               type master;

               file "abc.com.zone";

};

zone "124.168.192.in-addr.arpa.zone" {

             type master;

             file "124.168.192.in-addr.arpa.zone";

};

三、编写新增正向区域文件 abc.com.zone 。

[root@localhost ~]#vi  /var/named/chroot/var/named/abc.com.zone

在指定目录下建立一个空的文件,名字为abc.com.zone ,该名称是由named.conf 中对应区域的 file 项指定的名称。在文件中输入以下代码:

$TTL 86400

@           IN                       SOA                      abc.com                      root.abc.com.(

             2008072001;serial

             28800          ;refresh

             14400          ;retry

              86400         ;expire

              86400)        ;minimum

@            IN                   NS                           dns.abc.com.

@            IN                   MX       10              mail.abc.com.

dns.abc.com     IN             A                        192.168.124.128

www.abc.com  IN              A                       192.168.124.129

mail.abc.com     IN              A                       192.168.124.130

ftp                      IN              CNAME           www

 

       根据前面的任务情境给出了dns 主机、www主机 、mail主机 及ftp 主机的域名解析资源记录。区域的首部给出了SOA资源记录,SOA资源记录包含5个相关参数。这5个参数都是用来控制主域名服务器与辅助服务器的同步操作。

常用资源记录类型:

SOA              区域的起始授权资源记录

NS                 该区域的域名服务器资源记录

A                    正向解析资源记录,域名到IP 地址的转换

PTR               反向解析资源记录,IP地址到域名的转换

MX                该区域的邮件资源记录

CNAME        主机的别名资源记录

四、编写新增反向区域文件 124.168.192.in-addr.arpa.zone 。

[root@localhost ~]#vi  /var/named/chroot/var/named/124.168.192.in-addr.arpa.zone

在指定目录下建立一个空的文件,名字为124.168.192.in-addr.arpa.zone ,该名称是由named.conf 中对应区域的file项指定的名称。 在文件中输入以下代码:

$TTL 86400

@           IN                       SOA                      abc.com                      root.abc.com.(

             2008072001;serial

             28800          ;refresh

             14400          ;retry

              86400         ;expire

              86400)        ;minimum

@            IN                   NS                           dns.abc.com.

128.124.168.192.in-addr.arpa.                IN                    PTR             dns.abc.com.

129                                 IN                    PTR             www.abc.com.

130                                IN                       PTR             mail.abc.com.

五、利用 rndc  控制DNS服务器。

使用下列命令生成rndc.conf  文件。

[root@localhost ~]#rndc-confgen >>/etc/rndc.conf

查看 rndc.conf ,将下列代码添加到 named.conf  文件中,使 rncd  可以远程控制  named服务。

key "rndckey" {

                  algorithm  hmac-md5;

                  secret "oYXwrXp89HnCQ0bOTS0zQA==";

};

controls {

                inet 127.0.0.1   port 953

                               allow {127.0.0.1;} keys {"rndckey";};

};

      在rndc.conf 中定义了key 和controls 两个区域的相关设定,若caching-nameserver 自动生成的主配置文件 named.conf 中已包含这两个区域配置,应修改  named.conf  ,使得这两个区域相关设定与 rndc.conf 一致即可,主要是key区域中secret 选项需要同步。使用rndc reload 命令控制 named 服务的重起,相当于要求 named 服务重新读取一下 named.conf 文件,这样便于 named 有区域变动后,使这生效。使用如下命令:

[root@localhost ~]#rndc  reload

Server reload successful

 

**笔者知识面有限,如有错误,请指教!**

 

 

 

      

      

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章