编译安装bind9

一、下载bind9.9.5源码包

    可以通过www.isc.org站点来获得源码包。

二、将源码包解压到任意目录

    源码包通常都是.tar.gz文件,因此我们需要先将其解压:

0.png

三、编译安装bind

    1、安装前的准备工作

        安装gcc和openssl-devel

2.png3.png

        gcc无需多说,编译时必须要用到的工具;安装openssl-devel是因为在进行编译时,提示openssl头文件找不到,不安装openssl-devel的话可以使用–without-openssl选项,但无法使用DNS的安全功能。

    2、生成Makefile

01.png

1.png

    选项:

        –prefix:指定安装路径;

        –sysconfdir:指定配置文件路径;

        –enable-threads:启用线程;

        –disable-chroot:禁用chroot;

        –disable-ipv6:禁用ipv6;

        –with-openssl:指明openssl头文件的位置。

    3、编译安装

4.png

05.png四、配置bind的环境

    1、使用bind9的自带命令

        在bind9的安装目录中的bin和sbin中存放着其自带的命令,可以将这两个目录加入到PATH变量中:

5.png

        重新登录终端后查看PATH:

6.png

    2、man手册

        在bind9的安装目录中share下面存放了man手册,也可以将man加入到系统中实现使用man named即可调用。

7.png

        在/etc/man.config中加入一行即可,如下图所示:

8.png

    3、库文件

        创建/etc/ld.so.conf.d/bind9.conf文件,并添加以下内容即可:

9.png

五、创建目录及配置文件

    1、主配置文件

        创建/etc/named/named.conf文件,内容如下:

13.png

    2、创建系统用户和组

10.png

    3、修改主配置文件权限并创建目录

11.png

    4、创建named.ca文件

        named.ca文件中是存放全球根服务信息的,可以使用一台可以访问互联网的DNS服务器来获得根服务器信息,下图中使用了联通的DNS服务器进行查询。

12.png    5、创建localhost.zone文件和127.0.0.zone文件

14.png

    6、修改区域文件的权限 

15.png

27.png

六、启动服务

    在启动服务之前,先检查一下主配置文件是否有语法错误:

16.png

    named命令用于启动服务,其选项含义为:

        -u:指定运行服务的用户;

        -c:指定读取的配置文件。

    使用ss命令查看53端口是否已启用监听:

17.png    至此DNS服务器已经可以正常工作了,不过rndc目前还不能使用,下面我们配置一下rndc。

七、rndc

    1、创建rndc.conf

        rndc的功能实现依靠/etc/named目录中的rndc.conf文件来实现,先来创建此文件:

18.png

    2、将rndc.conf中的内容复制到主配置文件中,如下图所示:

19.png20.png

3、重读配置文件

21.png

4、设置权限

22.png

5、验证

23.png

八、测试 

    我们来新建一个正向区域测试一下DNS服务器能否正常解析。

    1、修改主配置文件

24.png

    2、创建区域配置文件

25.png

    3、修改权限

28.png

    4、重启服务

23.png

    5、解析主机记录

26.png

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

(0)
petmasterpetmaster
上一篇 2015-05-04
下一篇 2015-05-05

相关推荐

  • linux入门及基本命令

    Linux的入门及基本命令     一.   磁盘分区 1.       分区类型 主分区:1-4,一个硬盘最多四个,最少可以没有,前提有别的硬盘存在,启动系统或存数据,不要再分小区,只有个活动状态。 2.    &nb…

    Linux干货 2017-07-15
  • linux用户管理(一)

    作为一个专业的服务器发行版,CentOS上存在着n多个用户,作为一个专业的运维工程师,linux的用户管理和用户组的管理是做为一个SA必不可少的工作. 下面我们就先来谈谈linux中的用户管理: useradd可以在系统中新建一个用户 用法如下: useradd [选项] 用户名 常用选项: -u 指定用户的UID -g 指定用户的初始组ID -G…

    Linux干货 2017-04-03
  • N21 第八周 总有刁民想害朕

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。 网桥将两个相似的网络连接起来,并对网络数据的流通进行管理。它工作于数据链路层,不但能扩展网络的距离或范围,而且可提高网络的性能、可靠性和安全性。 集线器的英文称为“Hub”。主要功能是对接收到的信号进行再生整形放大,以扩大网络的传输距离,同时把所有节点集中在以它为中心的节点上。它…

    Linux干货 2016-09-15
  • 马哥教育网络班22期+第十周课程练习

    1、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情)    CentOS系统启动流程为:POST –> BootSequence(BIOS) –> BootLoader(MBR) –> Kernel(ramdisk) –> r…

    Linux干货 2016-12-13
  • LInux基本常识和几个基本命令的用法

    1.默认系统管理员root 1)在Linux中,创建系统的同时,会创建一个超级用户,对系统拥有绝对权限。 2)每个账户的文件都被放在各自的家目录中,管理员家目录:/root 3)每个帐号会有一个uid号对应,管理员uid=0   cengOS7之前的版本一般用户uid从500开始   centOS7之后的版本一般用户uid从1000开始 …

    Linux干货 2016-07-23
  • shell脚本之测试命令(test、[])

    话不多说,直接开车 在编写shell脚本中,我们经常需要判断命令执行的正确与否,从而进行不同的操作。首先我们来介绍下条件性的执行操作符:根据退出状态而定,命令可以有条件地运行。其中,利用echo的话方便我们对测试结果的查看。 (1)&& 代表条件性的AND THEN 可以理解为短路与:当&&前面命令为真时,执行&am…

    Linux干货 2017-08-05