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.178linux.com/77193

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

相关推荐

  • 用户权限及正则表达式

    ln –s软连接原文件可以写绝对路径或相对于软连接文件的相对路径 ln 硬链接的原文件可以写绝对路径,相对于硬链接文件的相对路径或相对于当前路径的路径(因为硬链接主要是看节点号) etc/passwd格式: username:x:uid:gid:home:shell etc/shadow格式 username:password:password age:mi…

    Linux干货 2016-08-08
  • net25 第16周作业

    1、源码编译安装LNMP架构环境; yum groupinstall -y ‘Development Tools’ ‘Server Platform Development’ 编译nginx ~]# yum install -y openssl-devel pcre-devel ~]# useradd ngin…

    Linux干货 2017-05-15
  • 第五周

      第五周 1 显示/boot/grub/grub.conf中以至少一个空白字符开头的行;      grep "^[[:space:]]\+" /boot/grub/grub.conf 2 显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至…

    Linux干货 2017-01-02
  • 加密解密基础、OpenSSL通信 及 搭建私有CA (Blog 11)

    加密解密技术基础、PKI及创建私有CA

    2017-11-29
  • LVM相关使用

    前言: LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制,它由Heinz Mauelshagen在Linux 2.4内核上实现,Linux用户安装Linux操作系统时遇到的一个常见的难以决定的问题就是如何正确地评估各分区大小,以分配合适的硬盘空间。普通的磁盘分区管理方式在逻辑分区划分…

    Linux干货 2017-08-13
  • 文本编辑秘籍之vim宝典

    一、初识Vim Vim是从 vi 发展出来的一个文本编辑器。其功能非常强大,熟练掌握vim的常用操作和快捷操作能让我们从繁杂的文本处理任务中杀出血路,在运维的道路上愉快前行。 vim使用简单命令组合来完成复杂操作,同时也支持基本正则表达式。 二、拨开vim迷雾: 2.1 使用vim打开一个文件: 如果该文件存在,文件被打开并显示内容;如果该文件不存在,当编辑…

    Linux干货 2016-08-10

评论列表(1条)

  • renjin
    renjin 2017-06-02 16:03

    主要介绍了bind的配置文件的格式及应用,介绍了bind正向解析、反向解析、主从配置。及如何开启转发功能。内容写的很详细,排版上需要注意下标题