關於DNS的安裝及配置


模式:C/S模式

 

#vim /etc/services

端口:

tcp/53    udp/53    #用於客戶端查詢

tcp/953  udp/953  #用於DNS主從同步

 

安裝DNS

BIND簡介

BIND全稱為Berkeley internet Name Domain(伯克利因特網名稱域系統)。

BIND主要有三個版本:BIND4、BIND8、BIND9。

BIND融合了許多提高效率、穩定性和安全性的技術,而BIND9增加了一些超前的理念:IPV6支持、密鑰加密、多處理器支持、線程安全操作、增量區傳送等等。

 

#rpm -vih /mnt/Packages/bind-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm    //DNS服務的主程序包

#rpm -vih /mnt/Packages/bind-chroot-9.7.3-8.P3.el6.x86_64.rpm     //提高安全性

注:bind-chroot是bind的一個功能,使bind可以在一個chroot的模式下運行。也就是說bind運行時的/(根)目錄,並不是系統真正的/(根)目錄,只是系統中的一個子目錄而已。這樣做的目的是為了提高安全性。因為在chroot的模式下,bind可以訪問的范圍僅限於這個子目錄的范圍里,無法進一步提升,進入到系統的其他目錄中。

#rpm -vih bind-utils-9.7.3-8.P3.el6.x86_64.rpm                                 //該包為客戶端工具,默認安裝,用於搜索域名指令。

 

或者

#yun install bind  

#yun install bind-chroot 

 

DNS服務器相關配置文件

#ls /etc/named.conf                //named.conf是BIND的核心配置文件,它包含了BIND的基本配置,但其並不包括區域數據。

named.conf是BIND的並不包括區域數據。

 

啟動服務

//要先啟動named服務,否則/var/named/chroot/目錄下的文件不會被掛載上。這個和RHEL5是不一樣的。

#ls /var/named/chroot/

#/etc/init.d/named restart(有點慢稍等下)

#service named restart  //重啟服務

 

在客戶端配置好DNS服務器地址

#cat /etc/resolv.conf  (查看DNS服務器地址)

#vim /etc/sysconfig/network-scripts/ifcfg-eth0

DNS1=100.64.140.120(當前本地PC的IP地址)

 

修改配置文件,實戰舉例

例1:配置DNS服務器解析:xuegod.cn

#vim /var/named/chroot/etc/named.conf

 options {
        listen-on port 53 { any; };
        listen-on-v6 port 53 { any; };
        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; };
        recursion yes;

        dnssec-enable yes;
        dnssec-validation yes;

zone "xuegod.cn" IN{
        type master;
        file "xuegod.cn.zone";
};

創建zone文件

#cd /var/named

#cp -rp named.localhost xuegod.cn.zone

#vim xuegod.cn.zone

 

$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
        A       127.0.0.1
        AAAA    ::1
代替為

$TTL 1D
@       IN SOA  ns.xuegod.cn. admin.xuegod.cn (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      ns.xuegod.cn.
ns      A       100.64.140.120
www     A       100.64.140.120
mail    A       100.64.140.121
smtp    CNAME   mail.xuegod.cn.
        AAAA    ::1

配置說明:

$TTL 1D;設置有效地址解析記錄的默認緩解時間,默認為1天也就是1D。
#原來的@表示當前的域xuegod.cn.,為方便大家記憶,我們這里,直接寫成xuegod.cn.
#設置SOA記錄為:dns.xuegod.cn.  #在此配置文件中寫域名時,都把根.也要寫上。

#域管理郵箱root.xuegod.cn,由於@有其他含義,所以用"."代替@。

0 ;更新序列號,用於標示數據庫的變換,可以在10位以內,如果存在輔助DNS區域,建議每次更新完數據庫,手動加1.
1D ;刷新時間,從域名服務器更新該地址數據庫文件的間隔時間,默認為1天
1H ;重試延時,從域名服務器更新地址數據庫失敗以后,等待多長時間,默認為1小時
1W ;到期,失效時間,超過該時間仍無法更新地址數據庫,則不再嘗試,默認為一周
3H ;設置無效地址解析記錄(該數據庫中不存在的地址)默認緩存時間。設置無效記錄,最少緩存時間為3小時

$TTL 1D;設置有效地址解析記錄的默認緩解時間,默認為1天也就是1D。
#原來的@表示當前的域xuegod.cn.,為方便大家記憶,我們這里,直接寫成xuegod.cn.
#設置SOA記錄為:dns.xuegod.cn.  #在此配置文件中寫域名時,都把根.也要寫上。

#域管理郵箱root.xuegod.cn,由於@有其他含義,所以用"."代替@。

0 ;更新序列號,用於標示數據庫的變換,可以在10位以內,如果存在輔助DNS區域,建議每次更新完數據庫,手動加1.
1D ;刷新時間,從域名服務器更新該地址數據庫文件的間隔時間,默認為1天
1H ;重試延時,從域名服務器更新地址數據庫失敗以后,等待多長時間,默認為1小時
1W ;到期,失效時間,超過該時間仍無法更新地址數據庫,則不再嘗試,默認為一周
3H ;設置無效地址解析記錄(該數據庫中不存在的地址)默認緩存時間。設置無效記錄,最少緩存時間為3小時

SOA:區域授權起始記錄,區域文件第一條記錄,而且一個區域文件只能有一條

NS:域的授權名稱服務器

MX:域的郵件交換器,要跟着一個優先級值,越小越高

A:IPV4主機地址

AAAA:IPV6主機地址

PTR:解析IP的指針

CNAME:權威(正式)名稱,定義別名記錄

 

#cd

#service named restart

 

#ping www.xuegod.cn

查看返回的地址是否為設置的DNS:100.64.140.120(當前本地PC的IP地址)

 

例二、使DNS支持迭代查詢

#vim /var/named/chroot/etc/named.conf

將藍標的注釋掉,這樣客戶端才能通過這個DNS進行遞歸查詢。把DNS加密通訊功能關閉,才可以和根服務器實行迭代查詢。

#service named restart

#ping www.baidu.com

ping:unknown host www.baidu.com

 

三、搭建DNS轉發服務器

#vim /var/named/chroot/etc/named.conf

#service named restart

嘗試ping百度,可以連通

#ping www.baidu.com

 

 四、搭建DNS主從服務器

#vim /var/named/chroot/etc/named.conf

 

可以允許哪個網段的從DNS服務器,可以同步主DNS服務器zone文件,不寫默認為所有。

 

 配置從服務器

到另外一台主機上

安裝DNS服務器

 

或者

#yum install bind

#yum install bind-chroot

#service named start(稍微有點慢)

#vim /var/named/chroot/etc/named.conf

options {
        listen-on port 53 { any; };
        listen-on-v6 port 53 { any; };
        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; };
        recursion yes;

        #dnssec-enable yes;
        #dnssec-validation yes;
  #dnssec-lookaside auto;

zone "xuegod.cn" IN{
        type slave;
        file "slaves/xuegod.cn.zone.file";

  masters{ 100.64.140.120; };
};

#service named restart

#ls /var/named/chroot/var/named/slaves

xuegod.cn.zone.file

注:這樣從DNS服務器就可以從主服務器上獲取DNS解析記錄信息了。

重啟從DNS服務器會在:/var/named/chroot/var/named/slaves文件夾下自動創建一個文件

xuegod.cn.zone.file這個文件是從DNS服務器從主DNS服務器上獲取的數據。

 

驗證同步:

修改主DNS服務器區域文件

#vim /var/named/chroot/etc/named.conf

#service named restart

到從DNS服務器驗證

#service named restart

#rm -rf /var/named/chroot/var/named/slaves/xuegod.cn.zone.file

#service named restart

#cart /var/named/chroot/var/named/slaves/xuegod.cn.zone.file

 

 

 注:若發現沒用同步,很正常,同步周期為1天。

 

 六、DNS主從密鑰認證

1、同步時間

主服務器

#vim /etc/ntp.conf

#service ntpd stop

#ntpdate 0.rhel.pool.ntp.org

從服務器

#vim /etc/ntp.conf

#service ntpd stop

#ntpdate 0.rhel.pool.ntp.org

 

2、生成密鑰,進行主從認證,在主DNS服務器操作

#dnssec-keygen -a hmac-md5 -b 128 -n HOST abc

Kabc.+157+34056

 

-a hmac-md5:采用hmac-md5加密算法。

-b 128:生成的密鑰長度為128位。

-n<nametype:ZONE | HOST | ENTITY | USER | OTHER

(DNSKEY generation defaults to ZONE)

abc:為生成密鑰的名字

 

#cat Kabc.+157+34056.private

或者

#cat Kabc.+157+34056.key

 

#vim /var/named/chroot/etc/named.conf

 

(3)從DNS服務器

#vim /var/named/chroot/etc/named.conf 

 

 #service named restart

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM