DNS服务之bind编译安装详尽版

一、安装开发包组"Development Tools"、"Server Platform Tools",保证编译的正常进行。

 yum groupinstall "Development Tools" "Server Platform Tools"

二、添加named系统组和系统用户

 groupadd -r -g 53 named
 useradd -r -u 53 -g named named

三、准备bind--9.9.6-P1源代码,解压后进入解压目录使用./configure --help查看帮助,保证编译的准确性

 tar xvf bind-9.9.6-P1.tar.gz
 cd bind-9.9.6-P1
 ./configure --help | more
 ./configure --prefix=/usr/local/bind9 --sysconfdir=/etc/named/ --disable-
 chroot --enable-threads
 make
 make install

四、导出程序文件路径到环境变量PATH中,保证bind的正常启动

 vim /etc/profile.d/named.sh

PATH=/usr/local/bind9/bin:/usr/local/bind9/sbin:$PATH

echo PATH

 source /etc/profile.d/named.sh

五、导出帮助文件,保证能够使用man named

 vim /etc/man.config

MANPATH /usr/local/bind9/share/man

六、导出库文件,方便二次开发bind使用

 cd /etc/ld.so.conf.d/
 echo "/usr/local/bind9/lib" > bind9.conf
 ldconfig -v

七、创建区域数据库目录,使用dig工具,准备根区域数据库、localhost正向域数据库文件、localhost反向域数据库文件,并修改该目录下所有文件的访问权限和属组

 mkdir /var/named/ && cd /var/named/
 dig -t NS . @202.173.10.87 > /var/named/named.ca
 vim /var/named/named.localhost

$TTL 86400

@ IN SOA localhost. nsadmin.localhost. (

201503251

12H

1H

15D

1D )

IN NS localhost.

IN A 127.0.0.1

 cp named.localhost named.loopback
 sed -i ‘$d‘ named.loopback
 echo " IN PTR localhost." >> named.loopback
 chmod 640 *
 chown :named *

八、编写bind配置文件,并使用rndc-confgen生成密钥,并将密钥放入bind配置文件中

 rndc-confgen -r /dev/urandom 
 vim /etc/named/named.conf
# Use with the following in named.conf, adjusting the allow list as needed:
 key "rndc-key" {
   algorithm hmac-md5;
   secret "D8sH28h0fGjcyKYR6W6o0A==";
 };
 
 controls {
   inet 127.0.0.1 port 953
   allow { 127.0.0.1; } keys { "rndc-key"; };
 };
# End of named.conf
options {
directory "/var/named";
};
zone "." IN {
type hint;
file "named.ca";
};
zone "localhost" IN {
type master;
file "named.localhost";
allow-update { none;};
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.loopback";
allow-update { none;};
};

九、编写bind的服务脚本,并修改其访问权限

vim /etc/rc.d/init.d/named
#!/bin/bash
#
#chkconfig: 2345 60 39
#
#description:Bind-9.9.6-P1 named daemon
pidfile=/usr/local/bind9/var/run/named/named.pid
lockfile=/var/lock/subsys/named
confile=/etc/named/named.conf
named=/usr/local/bind9/sbin/named
prog=named
[ -r /etc/rc.d/init.d/functions ] && . /etc/rc.d/init.d/functions
start() {
if [ -e $lockfile ] ; then
   echo  "$prog is already running."
   warning
   echo  -e
   exit 0
fi
echo -n "Starting $prog:"
daemon --pidfile $pidfile $named -u named -c $confile
retval=$?
echo
if [[ $retval -eq 0 ]] ; then
touch $lockfile
return $retval
else
rm -f $lockfile $pidfile
return 1
fi
}
stop() {
if [ ! -e $lockfile ] ; then
echo  "$prog is stopped."
warning 
echo -e
exit 0
fi
echo -n "stopping $prog:"
killproc $prog
retval=$?
echo
if [[ $retval -eq 0 ]] ; then 
rm -rf $lockfile $pidfile
return 0
else    
echo "$prog can‘t be stopped."
warning 
echo -e
return 1
fi
}
restart() {
stop
start
}
reload() {
echo "reload the $prog:"
killproc -HUP $prog
retval=$?
echo
return $retval
}
status() {
if pidof $prog &> /dev/null; then
echo  "$prog is running.\n"
success
echo
 else 
echo  "$prog is stopped.\n"
success
echo
 fi
}
usage() {
echo "Usage:named {start|stop|status|reload|restart}"
}
case $1 in 
start)
start
;;
stop)
stop
;;
restart)
restart
;;
status)
status
;;
reload)
reload
;;
*)
usage
exit 1
;;
esac
chkconfig --add named
chmod 755 /etc/rc.d/init.d/named

至此,bind-9.9.6-P1编译安装结束。

时间: 2024-10-07 06:29:26

DNS服务之bind编译安装详尽版的相关文章

DNS系列- 2.dns服务搭建(bind编译安装)

DNS系列- 2.dns服务搭建(bind编译安装) 目录     一.安装bind         1.yum安装         2.编译安装     二.服务搭建         1.编辑DNS主配置文件         2.添加解析     三.测试         1.正向解析测试         2.反向解析测试 一.安装bind Bind(kerkeley Internet Name Deamon) 是现今互联网使用最广泛的DNS服务器软件,使用BIND作为服务器软件的DNS服务器

DNS的服务器的编译安装,及缓存名称服务器配置

  DNS的服务器的编译安装,及缓存名称服务器配置 ###################################废话不多说直接上货############################################# ###########这里我编译安装的版本是bind-9.10 实验前准备: [[email protected] local]# yum groupinstall "server platform development" [[email protecte

Apache服务简介及编译安装详解

Apache服务简介及编译安装详解 一.Apache简介 Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,是目前世界上使用最广泛的一种web server,它以跨平台,高效和稳定而闻名,可以运行在几乎所有广泛使用的计算机平台上.Apache的特点是简单.速度快.性能稳定,并可做代理服务器来使用. Apache是用C语言开发的基于模块化设计的web应用,总体上看起来代码的可读性高于php代码,它的核心代码并不多,大多数的功能都被分割到各种

DNS服务之bind安装配置与应用

BIND是实现DNS服务的一套软件(官方站点:isc.org),其包含了服务器端程序named(由bind程序包提供,监听套接字:53/tcp.53/udp),和客户端工具host.nslookup.dig(由bind-utils程序包提供).为保证服务器的安全性,bind还提供了一种"沙箱机制",bind-chroot是将原文件系统的根"/"替换成"/var/named/chroot"来使用. 目前主流的bind程序依旧是9.x系列.使用yum

DNS服务器之bind

bind早期是有伯克利维护,后来交给了ISC进行维护,官方站点www.isc.org 在linux主机上提供可供选择的域名解析机制,在/etc/nssswitch.conf文件提供了域名解析的平台,里面可以定义多重解析域名的方法以及本主机采用优先采用哪种域名解析方法. hosts:      files dns 其中files表示优先使用本地hosts文件来解析域名 dns表示其次使用dns服务来解析域名,这两者的顺序即表示他们使用时的优先级 而在/usr/lib64目录下有以下三口库文件可以实

bind编译安装及压力测试

一.编译安装bind 1.编译安装 # useradd -r -u 53 -s /sbin/nologin named   #准备好一个名为named的系统用户 # tar xf bind-9.9.5.tar.gz # cd bind-9.9.5 # ./configure --prefix=/usr/local/bind9 --sysconfdir=/etc/named --disable-ipv6 --disable-chroot --enable-threads # make &&

DNS服务和Bind配置

 一.DNS介绍    DNS是计算机域名系统(Domain Name System 或Domain Name Service) 的缩写,它是由域名解析器和域名服务器组成的.域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能的服务器.其中域名必须对应一个IP地址,一个IP地址可以有多个域名,而IP地址不一定有域名.域名系统采用类似目录树的等级结构.域名服务器通常为客户机/服务器模式中的服务器方,它主要有两种形式:主服务器和转发服务器.将域名映射为IP地址的过

thrift在windows的编译/安装--c++版

前言: thrift是出于Facebook的rpc网络编程框架, 其对跨平台和多语言的支持优于google protobuf, 但thrift在java/c#语言上应用比较多, 资料也丰富, 在windows平台的c++这块, 资料相对较少, 而且编译也麻烦. 这篇博客主要记录对thrift在windows上的编译和使用过程, 不涉及原理, 也不具体涉及应用.如有不足, 请各位指正. 执行过程1. 下载并安装Visual Studionotice: visual studio 有windows版

Linux的DNS服务和BIND应用

在Linux上DNS服务是由通过BIND程序提供的. 所以为了搭建DNS服务器,就需要安装BIND程序. 安装BIND BIND文件 主配置文件:/etc/named.conf 它包含了其他文件 查看BIND的其他文件 其中 /etc/named.iscdlv.key /etc/named.rfc1912.zones /etc/named.root.key 这三个模块是主配置文件的三个重要模块 解析库文件: /var/named/目录下 注意:1.一台DNS服务器可同时为多个区域提供解析 2.必