【Linux】DNS服務-BIND基礎配置(二)


BIND簡介

  現在使用最為廣泛的DNS服務器軟件是BIND(Berkeley Internet Name Domain),最早有伯克利大學的一名學生編寫,現在最新的版本是9,有ISC(Internet Systems Consortium)編寫和維護。

  BIND支持先今絕大多數的操作系統(Linux,UNIX,Mac,Windows)

  BIND服務的名稱稱之為named

  DNS默認使用UDP、TCP協議,使用端口為53(domain),953(mdc,遠程控制使用)

BIND安裝

  本例使用的環境是CentOS 7.0的Linux操作系統(非CentOS 7.0系統,安裝會有所區別),所以直接采用命令:yum install -y bind bind-chroot bind-utils
  其中bind-chroot和bind-utils是bind的相關包。
  
  

BIND配置

  1、BIND配置文件保存在兩個位置:
    /etc/named.conf  - BIND服務主配置文件
    /var/named/    - zone文件(域的dns信息)

  如果安裝了bind-chroot(其中chroot是 change root 的縮寫),BIND會被封裝到一個偽根目錄內,配置文件的位置變為:
    /var/named/chroot/etc/named.conf   - BIND服務主配置文件
    /var/named/chroot/var/named/    - zone文件
  chroot是通過相關文件封裝在一個偽根目錄內,已達到安全防護的目的,一旦程序被攻破,將只能訪問偽根目錄內的內容,而不是真實的根目錄

  2、BIND安裝好之后不會有預制的配置文件,但是在BIND的文檔文件夾內(/usr/share/doc/bind-9.9.4),BIND為我們提供了配置文件模板,我們可以直接拷貝過來:
    cp -r /usr/share/doc/bind-9.9.4/sample/etc/* /var/named/chroot/etc/
    cp -r /usr/share/doc/bind-9.9.4/sample/var/* /var/named/chroot/var/

  3、配置BIND服務的主配置文件(/var/named/chroot/etc/named.conf),命令:vim /var/named/chroot/etc/named.conf;
    內容很多使用簡單配置,刪除文件中logging以下的全部內容,以及option中的部分內容,得到如下配置

 1 /*
 2  Sample named.conf BIND DNS server 'named' configuration file
 3  for the Red Hat BIND distribution.
 4 
 5  See the BIND Administrator's Reference Manual (ARM) for details about the
 6  configuration located in /usr/share/doc/bind-{version}/Bv9ARM.html
 7 */
 8 
 9 options
10 {
11         // Put files that named is allowed to write in the data/ directory:
12         directory               "/var/named";           // "Working" directory
13         
14         
15         //listen-on port 53     { any; };
16         listen-on port 53       { 127.0.0.1; };
17 
18         //listen-on-v6 port 53  { any; };
19         listen-on-v6 port 53    { ::1; };
20 
21 };  

   4、在主配置文件(/var/named/chroot/etc/named.conf )中加入,zone參數
    

  5、新建example.net.zone文件,example.net的域名解析文件,zone文件放在/var/named/chroot/var/named/下,zone文件可以已/var/named/chroot/var/named/named.localhost為模板。
    命令:cp /var/named/chroot/var/named/named.localhost /var/named/chroot/var/named/example.net.zone
    

    文件example.net.zone的內容如下:
    

  6、禁用bind默認方式啟動,改用bind-chroot方式啟動。命令如下:
    [root@iZ2806l73p6Z named]# /usr/libexec/setup-named-chroot.sh /var/named/chroot on
    [root@iZ2806l73p6Z named]# systemctl stop named
    [root@iZ2806l73p6Z named]# systemctl disable named
    [root@iZ2806l73p6Z named]# systemctl start named-chroot
    [root@iZ2806l73p6Z named]# systemctl enable named-chroot
    [root@iZ2806l73p6Z named]#

    圖:
    

    注意:如果是CentOS 6.5的系統,這個步驟回有所區別,直接使用默認的service named start 啟動服務,bind就直接運行在chroot包中,如下圖:
    

  7、查看是否啟動,命令:ps -ef|grep named
    

  8、測試DNS服務,本例在本機上測試,也可在其他電腦上測試,修改DNS服務的ip地址即可(命令:vim /etc/resolv.conf ),然后使用命令dig(命令:dig www.example.net)測試

    
    
內容如下:
    
    
測試結果:
    
    

    注:非本機測試需要修改主配置文件named.conf,允許任何ip訪問,然后重啟服務器
    
    

    

    


    
    


免責聲明!

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



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