DNS服务器以及子域授权

1、安装bind

     [root@www ~]# yum -y install bind

2、查看安装生成的文件      [root@www ~]# rpm -ql bind | less

3、程序路径     /var/named

4、配置文件路径    /etc/named.conf

          全局配置:options {}

          日志子系统配置:logging {}

          区域定义:本机能够为哪些zone进行解析,就是要定义哪些zone

                         zone “ZONE_NAME” IN {}

备份主配置文件   [root@www named]# cp /etc/named.conf{,.bak}

修改配置文件:

Image.png

然后启动该服务    service named start     查看监听端口    ss -tunlp | grep :53

关闭dnssec   注释掉即可

配置主DNS服务器

     1、在主配置文件中定义区域

               zone “ZONE_NAME” IN {

                         type {master|slave|hint|forward}

                         file “ZONE_NAME.zone”;

};

[root@www named]# vim /etc/named.rfc1912.zones

Image.png

     2、定义区域解析库文件

                    出现的内容: 宏定义   资源记录定义

vim /var/named/security00.com.zone

Image.png

[root@www named]# named-checkconf  //检查主配置文件是否有错

[root@www named]# named-checkzone “security00.com” /var/named/security00.com.zone   //检查指定的zone文件是否有语法错误

修改文件权限

[root@www named]# chmod 640 security00.com.zone

[root@www named]# chown :named security00.com.zone

[root@www named]# service named reload

[root@www named]# rndc status    //查看当前状态

使用dig命令来测试解析配置

[root@www named]# dig -t A www.security00.com @192.168.246.129  //使用本机来解析

测试命令:dig的使用

     dig [-t type] name [@SERVER] [query options]

     dig命令用来测试dns系统,因此,不会查询hosts文件进行解析

     查询选项:

                   +[no]trace:跟踪解析过程

                   +[no]recurse:进行递归解析

                    -x:测试反向解析

                    -axfr:测试区域传送

EXAMPLE: 

          [root@www named]# dig -t A www.security00.com +trace

     

     host命令:

          host [-t type] name [SERVER]

          example:  [root@www named]# host -t A www.security00.com 192.168.246.129

         nslookup命令:

               nslookup [-option] [name | -] [server]

     交互式模式:

          nslookup>

                    server IP:指明使用哪个DNS server进行查询

                    set q = RR_TYPE:指明查询的类型

                    NAME:要查询的名称

反向区域:

     

     区域名称:网络地址反写.in-addr.arpa.

                    192.168.246. –> 246.168.192.in-addr.arpa.

     (1) 定义区域

          zone “ZONE_NAME” IN {

                    type {master | slave | forward};

                    file “网络地址.zone”;

}

[root@www named]# vim /etc/named.rfc1912.zones

Image.png

        (2) 区域解析库文件

               PS:不需要MX 和 A,以及AAA记录,以PTR记录为主

vim  /var/named/192.168.246.zone

Image.png

[root@www named]# named-checkconf  //检查主配置文件是否有错

[root@www named]# named-checkzone “246.168.192.in-addr.arpa” 192.168.246.zone   //检查指定的zone文件是否有语法错误

修改文件权限

[root@www named]# chmod 640 192.168.246.zone

[root@www named]# chown :named 192.168.246.zone

[root@www named]# service named reload

[root@www named]# rndc status    //查看当前状态

通过host来测试反向解析:

[root@www named]# host -t PTR 192.168.246.129 192.168.246.129

通过dig来进行反向解析测试:

[root@www named]# dig -x 192.168.246.131 @192.168.246.129

通过dig来测试区域传送漏洞:

[root@www named]# dig -t axfr security00.com @192.168.246.129

[root@www named]# dig -t axfr 246.168.192.in-addr.arpa @192.168.246.129

主从复制:

     1、应该为一台独立的名称服务器

     2、主服务器的区域解析库文件中必须有一条NS记录是指向从服务器

     3、从服务器只需要定义区域,无须提供解析库文件,解析库文件应该放置于/var/named/slaves/目录中

     4、主服务器应该允许从服务器作区域传送

     5、主从服务器时间应该同步,可通过ntp进行

     6、bind版本程序应该保持一致 否则 应该 从高 主低

     定义区域传送的方法:

          zone “ZONE_NAME” IN {

                   type slave;

                   masters { MASTER_IP; };

                   file “slaves/ZONE_NAME.zone”;

              }; 

     一台独立的服务器,安装bind 然后修改配置文件!

     [root@www named]# vim /etc/named.rfc1912.zones

Image.png

     测试配置文件是否有语法错误

     启动named服务

     rndc reload //重读配置文件

     rndc status  //查看当前状态

Image.png

     配置反向:

     [root@www ~]# vim /etc/named.rfc1912.zones

Image.png

   rndc reload  //重读配置文件

     

     PS:在主服务器在更改完资源库文件之后,记录数需要手动+1,否则从服务器不会同步!

     rndc: tcp/953

          reload: 重载主配置文件和区域解析库文件

          reload zone:只重载区域解析库文件

          retransfer zone:手动启动区域传送过程,不管序列号是否增加

          notify zone:重新对区域传送发通知

          reconfig:重载主配置文件

          querylog:开启/关闭查询日志     日志路径: /var/log/messages

          trace Level:指定debug的开启级别

子域授权 —–    分布式数据库

正向解析区域子域授权方法:

     定义一个子区域: 编辑区域配置文件    

                                 [root@www ~]# vim /var/named/security00.com.zone

Image.png

另一台(192.168.246.130)服务器上编辑资源解析库文件:

                               [root@www ~]# vim /etc/named.rfc1912.zones

Image.png

创建子域的的区域解析库文件:

          [root@www ~]# vim /var/named/test.security00.com.zone

Image.png

执行  rndc reload 重新读取配置文件    

查看日志:  tail  /var/log/message

Image.png

本机查询,查看解析结果:

Image.png

定义转发服务器:

     PS:被转发的服务器需要能够为请求者做递归,否则,转发请求不予进行;

(1) 全局转发:凡是对本机所有负责解析的区域的请求,统统转发给指定的服务器

          Option {

                   forward {first | only}

                   forwarders

             }

编辑配置文件:     [root@www ~]# vim /etc/named.conf

Image.png

(2) 区域转发:仅转发对特定区域的请求至某服务器

              zone “ZONE_NAME” IN {

                         type forward;

                         forward {first | only}

                         forwarders

          }

编辑子域的区域资源库文件:     [root@www named]# vim /etc/named.rfc1912.zones

Image.png

原创文章,作者:lishan,如若转载,请注明出处:http://www.178linux.com/77236

(0)
lishanlishan
上一篇 2017-05-31 08:24
下一篇 2017-05-31 19:32

相关推荐

  • Linux中/etc目录下常用的配置文件及其含义总结

         在linux中有一个很重要的思想就是一切皆文件,也就是说所有的系统参数的配置都是保存在各种各样的配置文件当中的,这点Linux和Windows有很大的差别。      因为Linux中有众多配置文件,学习起来难免会不容易记忆,所以在此把一些常用的配置文件记录下来,做一个归纳总结。根据FHS…

    Linux干货 2017-03-26
  • 初识MySQL(一)

        数据库(DATABASES)      数据库是一个单位或是一个应用领域的通用数据处理系统,存储有企业和事业部门、团体和个人的有关数据的集合,该集合中数据是从全局观点出发建立的,按一定的数据模型进行组织、描述和存储。其结构基于数据间的自然联系,从而可提供一切必要的存取路径,且数据不…

    Linux干货 2015-08-24
  • 磁盘管理

    1、拿到一块硬盘,通常来讲,第一步是分区,然后是文件系统的创建,管理文件系统,第三步是挂载设备。 2、linux(准确的说是UNIX)哲学,whindows一切皆窗口,一切皆图形。 3、磁盘是一个硬件设备,存放在/dev/目录下,会有相应的文件来对应的表示这些设备文件,在这个目录下存放的全是设备。 4、在/dev目录下和设备相关的有两种,一种是c开头为字符,…

    Linux干货 2017-04-22
  • Linux基础知识

    命令的语法通用格式: # COMMAND OPTIONS ARGUMENTS COMMAND:  发起一命令:请求内核将某个二进制程序运行为一个进程; 程序 –> 进程 静态 –> 动态(有生命周期) 命令本身是一个可执行的程序文件:二进制格式的文件,有可能会调用共享库文件; 多数系统程序文件都存放在:/bin,…

    Linux干货 2016-10-29
  • linux的发展史

    一、今天要介绍的Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。 但是很多时候我们了解到的技术都不是…

    Linux干货 2016-10-17
  • 位置变量&特殊变量总结

    位置变量 常用的位置变量有 $1, $2, $3 ……,表示命令行传给脚本的第一个参数,第二个参数,第三个参数。。。 $0 表示脚本的文件名,比如a.sh 位置变量在脚本中的主要作用,是让脚本通过他们来获取命令行传递给脚本的参数。 变量位置调整 shift [n] 用于调整变量位置 第n+1个位置变量会被重新命名为$1…

    Linux干货 2016-08-15