Chinaunix首页 | 论坛 | 博客
  • 博客访问: 120427
  • 博文数量: 28
  • 博客积分: 1648
  • 博客等级: 上尉
  • 技术积分: 325
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-06 12:50
文章分类
文章存档

2014年(1)

2013年(1)

2012年(7)

2011年(14)

2010年(4)

2007年(1)

我的朋友

分类: 网络与安全

2014-04-22 09:54:43

BIND乃现今使用最为广泛的DNS服务器软件
         BIND服务的名称谓之“named”
         BIND配置文件保存在两个主要位置
           ▲ BIND服务主配置文件:/etc/named.conf
           ▲ zone文件:         /var/named/
         chroot是通过将相关文件封装在一个伪根目录内,以达到安全防卫的目的,一旦该程序被攻破,
         将只能访问伪根目录内的内容,而不是真实的根目录
         通过:
             yum install -y bind bind-chroot bind-utils
             进行BIND安装
         默认使用53号端口
         如果安装了bind-chroot,BIND会被封装在一个伪根目录内(/var/named/chroot/),配置文件的位置则变为:
           ▲ BIND服务主配置文件:/var/named/chroot/etc/named.conf
           ▲ zone文件:         /var/named/chroot/var/named/
           原来在/etc 和/var的内的配置信息会被完全移到伪根内
         BIND在安装后没有预置的配置文件,但在BIND的文档文件夹内(/usr/share/doc/bind-*),BIND为我们提供了配置文件模板
         我们可以直接拷贝过来:
           cp -rv /usr/share/doc/bind-9.3.6/sample/etc/*  /var/named/chroot/etc
           cp -rv /usr/share/doc/bind-9.3.6/sample/var/*  /var/named/chroot/var
         最小化的BIND服务主配置文件内容如下:
  1. [root@even etc]# cat named.conf  
  2. options  
  3. {  
  4.         directory "/var/named";  
  5.         listien-on port 53 {127.0.0.1;};  
  6. };  


         配置域主服务器(Master)
        
         ① --在BIND的主配置文件中添加域example.com的定义

         定义:

                设置指向每个域名和IP地址映射信息的文件


         ● 配置文件位置
            /var/named/chroot/etc/named.conf
         ● 在主配置文件中添加一行域的zone定义:
           zone "example.com"{
             type master;
             file "example.com.zone";
                             };
                            
         ② --为定义的域添加zone配置文件

         定义:

                

                 用户配置的域名解析文件:也称为区文件,若当前DNS服务器需要解析多个域名,则需要设置多个域名解析文件。若需要反向解析,还要设置对应的反向解析文件。


         ● zone文件的位置
            /var/named/chroot/var/named/example.com.zone
         ● zone文件内容
            zone文件内容比较复杂,手工输入极易出错,所以,
            一般使用默认的named.localhost配置文件作为模板
            cp named.localhost或者localdomain.zone  example.com.zone
            然后,添加资源记录(RR)
                      IN MX  10  mail.example.com
.
            www  IN  A  192.168.1.110
            mail   IN  A  192.168.1.126
       
            并且:
                ★ 确保这些配置文件都有读权限:ll
                ★ selinux是关着:getenforce
       
         ③ --启动BIND服务或刷新配置
           service named start
           service named reload
          
         ④ --用本机作测试:将本机的DNS配置指向本机
           /etc/resolv.conf
           nameserver 127.0.0.1
          
         ⑤ --使用host或者dig命令验证DNS配置

  1. [root@even named]# dig -t mx example.com  
  2.   
  3. ; <<>> DiG 9.3.6-P1-RedHat-9.3.6-20.P1.el5 <<>> -t mx example.com  
  4. ;; global options:  printcmd  
  5. ;; Got answer:  
  6. ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 65191  
  7. ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 3  
  8.   
  9. ;; QUESTION SECTION:  
  10. ;example.com.                   IN      MX  
  11.   
  12. ;; ANSWER SECTION:  
  13. example.com.            86400   IN      MX      10 mail.example.com.  
  14.   
  15. ;; AUTHORITY SECTION:  
  16. example.com.            86400   IN      NS      example.com.  
  17.   
  18. ;; ADDITIONAL SECTION:  
  19. mail.example.com.       86400   IN      A       192.168.1.126  
  20. example.com.            86400   IN      A       127.0.0.1  
  21. example.com.            86400   IN      AAAA    ::1  
  22.   
  23. ;; Query time: 2 msec  
  24. ;; SERVER: 127.0.0.1#53(127.0.0.1)  
  25. ;; WHEN: Tue Nov 27 20:13:03 2012  
  26. ;; MSG SIZE  rcvd: 124  
  27.   
  28. [root@even named]# host 


         错误排查
        
         DNS配置语法晦涩,容易出现配置错误
         BIND为我们提供了两个语法检查工具:
         ▼ named-checkconf可以查看BIND主配置文件的错误:
            named-checkconf /var/named/chroot/etc/named.conf
         ▼ named-checkzone可以查看zone文件的错误:
            named-checkzone example.com /var/named/chroot/var/named/example.com.zone
            通常,BIND配置要么语法上出错、要么权限上有错

阅读(1342) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~