Bind配置和基本應用

BIND的安裝配置:
    BIND: Berkeley Internet Name Domain,  ISC.org
        dns: 協議
        bind: dns協議的一種實現
        named:bind程序的運行的進程名

    程序包:
        bind-libs:被bind和bind-utils包中的程序共同用到的庫文件;
        bind-utils:bind客戶端程序集,例如dig, host, nslookup等;

        bind:提供的dns server程序、以及幾個常用的測試程序;
        bind-chroot:選裝,讓named運行于jail模式下;

    bind:
        主配置文件:/etc/named.conf 
            或包含進來其它文件;
                /etc/named.iscdlv.key
                /etc/named.rfc1912.zones
                /etc/named.root.key
        解析庫文件:
            /var/named/目錄下;
                一般名字為:ZONE_NAME.zone

            注意: (1) 一臺DNS服務器可同時為多個區域提供解析;
                    (2) 必須要有根區域解析庫文件: named.ca;
                    (3) 還應該有兩個區域解析庫文件:localhost和127.0.0.1的正反向解析庫;
                        正向:named.localhost
                        反向:named.loopback

        rndc:remote name domain contoller
            953/tcp,但默認監聽于127.0.0.1地址,因此僅允許本地使用;

        bind程序安裝完成之后,默認即可做緩存名稱服務器使用;如果沒有專門負責解析的區域,直接即可啟動服務;
            CentOS 6: service  named  start
            CentOS 7: systemctl  start  named.service

        主配置文件格式:
            全局配置段:
                options { … }
            日志配置段:
                logging { … }
            區域定義段:
                zone { … }
                    那些由本機負責解析的區域,或轉發的區域;

                注意:每個配置語句必須以分號結尾;

            緩存名稱服務器的配置:
                監聽能與外部主機通信的地址;
                    listen-on port 53;
                    listen-on port 53 { 172.16.100.67; };

                學習時,建議關閉dnssec
                    dnssec-enable no;
                    dnssec-validation no;
                    dnssec-lookaside no;

                關閉僅允許本地查詢:
                    //allow-query  { localhost; };

            檢查配置文件語法錯誤:
                named-checkconf   [/etc/named.conf]

            測試工具:
                dig, host, nslookup等

                dig命令:
                    dig  [-t RR_TYPE]  name  [@SERVER]  [query options]

                        用于測試dns系統,因此其不會查詢hosts文件;

                        查詢選項:
                            +[no]trace:跟蹤解析過程;
                            +[no]recurse:進行遞歸解析;

                        注意:反向解析測試
                            dig  -x  IP

                        模擬完全區域傳送:
                            dig  -t  axfr  DOMAIN  [@server]

                host命令:
                    host  [-t  RR_TYPE]  name  SERVER_IP

                nslookup命令:
                    nslookup  [-options]  [name]  [server]

                    交互式模式:
                        nslookup>
                            server  IP:以指定的IP為DNS服務器進行查詢;
                            set  q=RR_TYPE:要查詢的資源記錄類型;
                            name:要查詢的名稱;

                rndc命令:named服務控制命令
                rndc  status
                rndc  flush

配置解析一個正向區域:

    以magedu.com域為例:

    (1) 定義區域
        在主配置文件中(/etc/named.conf)或主配置文件輔助配置文件(/etc/named.rfc1912.conf)中實現;

zone  "ZONE_NAME"  IN  {
    type  {master|slave|hint|forward};
    file  "ZONE_NAME.zone"; 
};  

            注意:區域名字即為域名;

    (2) 建立區域數據文件(主要記錄為A或AAAA記錄)
        在/var/named目錄下建立區域數據文件;
            文件為:/var/named/magedu.com.zone

$TTL 3600
$ORIGIN magedu.com.
@       IN      SOA     ns1.magedu.com.   dnsadmin.magedu.com. (
    2017010801
    1H
    10M
    3D
    1D )
    IN      NS      ns1
    IN      MX   10 mx1
    IN      MX   20 mx2
ns1     IN      A       172.16.100.67
mx1     IN      A       172.16.100.68
mx2     IN      A       172.16.100.69
www     IN      A       172.16.100.67
web     IN      CNAME   www
bbs     IN      A       172.16.100.70
bbs     IN      A       172.16.100.71

            權限及屬組修改:
                # chgrp  named  /var/named/magedu.com.zone
                # chmod  o=  /var/named/magedu.com.zone

            檢查語法錯誤:
                # named-checkzone  ZONE_NAME   ZONE_FILE
                # named-checkconf 

    (3) 讓服務器重載配置文件和區域數據文件
        # rndc  reload 或
        # systemctl  reload  named.service

配置解析一個反向區域
    (1) 定義區域
        在主配置文件中或主配置文件輔助配置文件中實現;

zone  "ZONE_NAME"  IN  {
    type  {master|slave|hint|forward};
    file  "ZONE_NAME.zone"; 
};

            注意:反向區域的名字
                反寫的網段地址.in-addr.arpa 
                                    100.16.172.in-addr.arpa

    (2) 定義區域解析庫文件(主要記錄為PTR)

        示例,區域名稱為100.16.172.in-addr.arpa;

$TTL 3600
$ORIGIN 100.16.172.in-addr.arpa.
@       IN      SOA     ns1.magedu.com.  nsadmin.magedu.com. (
        2017010801
        1H
        10M
        3D
        12H )
    IN      NS      ns1.magedu.com.
67      IN      PTR     ns1.magedu.com.
68      IN      PTR     mx1.magedu.com.
69      IN      PTR     mx2.magedu.com.
70      IN      PTR     bbs.magedu.com.
71      IN      PTR     bbs.magedu.com.
67      IN      PTR     www.magedu.com.

            權限及屬組修改:
                # chgrp  named  /var/named/172.16.100.zone
                # chmod  o=  /var/named/172.16.100.zone

            檢查語法錯誤:
                # named-checkzone  ZONE_NAME   ZONE_FILE
                # named-checkconf 

    (3) 讓服務器重載配置文件和區域數據文件
            # rndc  reload 或
            # systemctl  reload  named.service

主從服務器:
    注意:從服務器是區域級別的概念;

            配置一個從區域:
                On Slave 
                    (1) 定義區域
                        定義一個從區域; 

zone "ZONE_NAME"  IN {
    type  slave;
    file  "slaves/ZONE_NAME.zone";
    masters  { MASTER_IP; };
};

                            配置文件語法檢查:named-checkconf

                    (2) 重載配置
                        rndc  reload
                        systemctl  reload  named.service

                On Master
                    (1) 確保區域數據文件中為每個從服務配置NS記錄,并且在正向區域文件需要每個從服務器的NS記錄的主機名配置一個A記錄,且此A后面的地址為真正的從服務器的IP地址;

                注意:時間要同步;
                    ntpdate命令;

子域授權:
    正向解析區域授權子域的方法:

ops.magedu.com.   IN  NS      ns1.ops.magedu.com.
ops.magedu.com.     IN  NS      ns2.ops.magedu.com.
ns1.ops.magedu.com.     IN  A   IP.AD.DR.ESS
ns2.ops.magedu.com.     IN  A   IP.AD.DR.ESS

    定義轉發:
        注意:被轉發的服務器必須允許為當前服務做遞歸;

        (1) 區域轉發:僅轉發對某特定區域的解析請求;

zone  "ZONE_NAME"  IN {
    type  forward;
    forward  {first|only};
    forwarders  { SERVER_IP; };
};

            first:首先轉發;轉發器不響應時,自行去迭代查詢;
            only:只轉發;

        (2) 全局轉發:針對凡本地沒有通過zone定義的區域查詢請求,通通轉給某轉發器;

options {
    ... ...
    forward  {only|first};
    forwarders  { SERVER_IP; };
    ... ...
};

bind中的安全相關的配置:

    acl:訪問控制列表;把一個或多個地址歸并一個命名的集合,隨后通過此名稱即可對此集全內的所有主機實現統一調用;

acl  acl_name  {
    ip;
    net/prelen;
};

        示例:

acl  mynet {
    172.16.0.0/16;
    127.0.0.0/8;
};

        bind有四個內置的acl
            none:沒有一個主機;
            any:任意主機;
            local:本機;
            localnet:本機的IP所屬的網絡;

    訪問控制指令:
        allow-query  {};  允許查詢的主機;白名單;
        allow-transfer {};  允許向哪些主機做區域傳送;默認為向所有主機;應該配置僅允許從服務器;
        allow-recursion {}; 允許哪此主機向當前DNS服務器發起遞歸查詢請求; 

        allow-update {}; DDNS,允許動態更新區域數據庫文件中內容;

原創文章,作者:XIAJIDONG,如若轉載,請注明出處:http://www.www58058.com/77193

(0)
XIAJIDONGXIAJIDONG
上一篇 2017-05-30
下一篇 2017-05-30

相關推薦

  • linux-第一周

    inux命令:(type)                  1,集成在bash中的命令,內部命令。依賴于shell類型。                  2,在文件系統路徑下有…

    Linux干貨 2017-05-20
  • N25第六周作業

    vim編輯器 基本模式: 編輯模式,命令模式 輸入模式 末行模式: 內置的命令行接口;   打開文件: # vim [options] [file ..] +#:打開文件后,直接讓光標處于第#行的行首; +/PATTERN:打開文件后,直接讓光標處于第一個被PATTERN匹配到的行的行首;   模式轉換: 編輯模式:默認模式 編輯模式 &…

    Linux干貨 2017-02-15
  • 三種方案實現tomcat反代服務

    要求: 分別實現這三種架構:    1、nginx + tomcat cluster    2、httpd(proxy_http_module)+tomcat cluster    3、httpd(proxy_ajp_module)+tomcat cluster;   &nbsp…

    2017-07-03
  • 網絡管理

    7層結構。三次握手,四次揮手。

    2017-12-17
  • 磁盤管理

                              磁盤管理 fdisk分區管理工具 :fdisk ,parted,sfdisk      fdisk:對于一塊硬盤來講,…

    Linux干貨 2015-10-14
  • 路漫漫其修遠兮第十周

    1、請詳細描述CentOS系統的啟動流程(詳細到每個過程系統做了哪些事情) 從dawning大濕兄那里借來的圖,如下: 啟動過程 (PC架構) POST –> Boot Sequence(BIOS) –> Boot Loader (MBR)–>GRUB—> Kernel(ramdisk) &#821…

    Linux干貨 2017-02-24

評論列表(1條)

  • renjin
    renjin 2017-06-02 16:03

    主要介紹了bind的配置文件的格式及應用,介紹了bind正向解析、反向解析、主從配置。及如何開啟轉發功能。內容寫的很詳細,排版上需要注意下標題

欧美性久久久久