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 21:49
下一篇 2017-05-30 22:23

相关推荐

  • 数组和字符串处理

    数组:存储多个元素的连续的内存空间,相当于多个变量的集合     1)定义数组:        declare -a ARRAY_NAME 定义普通数组 可省略declare -a ]#arr=(a b&nbs…

    Linux干货 2016-08-24
  • 免费翻墙 [精]

    本人在hostus上买了一个国外的vps,花了一上午把Google给做好,可以访问g.abcdocker.com进行搜索,因为是使用nginx代理进行翻墙。网上的文章也很乱,很不好整理。 可以可以使用g.abcdocker.com上Google查阅资料。(无法观看视频) www.abcdocker.com

    2017-06-17
  • Linux运维实战之2-2:bash的工作特性

    这次博文我们主要来谈谈bash的工作特性哈。 主要内容: bash是一种shell解释程序     bash工作特性之命令状态返回值 bash工作特性之命令行展开 bash工作特性之命令补全 bash工作特性之路径补齐 bash工作特性之命令引用 bash工作特性之命令别名 bash工作特性之文件名通配 bash工作特性之命令hash 问…

    Linux干货 2016-11-06
  • Linux基础小模块

    1.基础知识小块:shell 由shell程序的自带命令:即为内置命令(builtin) 独立的可执行程序文件、文件名 :即为外部命令  [root@localhost~]#ls      ~用户当前所在目录  #:命令提示符(管理员帐号root)  $:普通用户   &nbsp…

    Linux干货 2016-08-05
  • 学习了点命令

    什么是shell 它提供了用户与内核进行交互操作的一种接口shell它接受用户输入的命令并把它送入内核去执行 shell也被称为Linux的命令解释器 shell是一种高级程序设计 语言 查看当前系统使用了那个shell            &nb…

    Linux干货 2017-07-13
  • rsyslog配置详解,结合mysql+loganalyzer展现

        环境:Centos7.2 前言:系统日日夜夜不停地运行着,有这么一个守护进程,兢兢业业地不断记录它运行产生的日志,有不起眼的闲言碎语,值得管理员撇一眼的系统报错,也默默地接收来自进程的严厉警告,甚至在内核崩溃前夕,同样不遗余力记录着当时发生的情形。他是无言的记录者,没有特别的修辞,但他的记录的文字却掷地有声。本…

    系统运维 2016-10-25

评论列表(1条)

  • renjin
    renjin 2017-06-02 16:03

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