快速部署DNS

一.安装

yum install -y bind-utils bind bind-devel bind-chroot

bind:包里主要包含:
named DNS服务
named-chkconfig(named.conf文件检查工具)
named-checkzone(zone文件检车工具)
rndc(本地和远程dns控制工具)
bind-libs:named DNS服务的库
bind-utils:包含一系列辅助工具来测试
host
dig
nslookup
nsupdate
bind-chroot:切根程序,用来切换默认目录到另外一个深层的安全的目录/var/named/chroot,类似于前面光盘进入救援模式的那种情况。

说明
bind-utils :
bind :DNS主程序包
bind-devel :DNS开发包
bin-chroot: 可以不安装,安装之后当服务器遭到入侵时,也不会被对方访问到计算机内的其他目录,只能限制在/var/named/chroot/目录内,保证了操作系统的安全.

/etc/named.conf # bind主配置文件
/etc/named.rfc1912.zones # 定义zone的文件
/etc/rc.d/init.d/named # bind脚本文件
/etc/rndc.conf # rndc配置文件
/usr/sbin/named-checkconf # 检测/etc/named.conf文件语法
/usr/sbin/named-checkzone # 检测zone和对应zone文件的语法
/usr/sbin/rndc # 远程dns管理工具
/usr/sbin/rndc-confgen # 生成rndc密钥
/var/named/named.ca # 根解析库
/var/named/named.localhost # 本地主机解析库
/var/named/slaves # 从ns服务器文件夹

CentOS7启动方式
service named status
or systemctl status named-chroot
or systemctl restart named.service
or /usr/sbin/named -c /mnt/app/named/named.conf -u named && echo success
系统启动文件地址:
/usr/lib/systemd/system/named.service
/usr/lib/systemd/system/named-chroot.service

二. 安装完成后的目录结构
/var/named/chroot/ #为dns服务器的根目录
-etc/ #dns服务器服务配置文件存放位置
/etc/named.conf 是BIND 的核心配置文件,它包含了BIND 的基本配置,但其并不包括区域数据库。
-var/named #dns服务器数据库文件的存放位置

bind+rndc

rndc部署
https://www.it7e.com/archives/1727.html

rndc-confgen -r /dev/urandom > /etc/rndc.conf
vim /etc/rndc.conf

Start of rndc.conf

key “rndc-key” {
algorithm hmac-md5;
secret “b405rE/0feZGfrtpkTCUEw==”;
};

options {
default-key “rndc-key”;
default-server 10.46.171.233; #转到第9行,其定义了要管理的BIND服务器的地址,.
default-port 953;
};

End of rndc.conf

Use with the following in named.conf, adjusting the allow list as needed:

key “rndc-key” {

algorithm hmac-md5;

secret “b405rE/0feZGfrtpkTCUEw==”;

};

controls {

inet 127.0.0.1 port 953

allow { 127.0.0.1; } keys { “rndc-key”; };

};

End of named.conf

将以下部分复制到named.conf

Use with the following in named.conf, adjusting the allow list as needed:

key “rndc-key” {
algorithm hmac-md5;
secret “b405rE/0feZGfrtpkTCUEw==”;
};
#
controls {
inet 10.46.171.233 port 953
allow { 10.46.171.233; } keys { “rndc-key”; };
};

检测配置文件:
named-checkconf named.conf
检测zone文件
named-checkzone

开启查询日志: rndc querylog

reload #默认是对所有zone都重新加载配置文件和区域文件
refresh #只能对type为slave的有效
reload zone_name #重新加载指定区域
reconfig #只对named.conf中新增/删除的zone生效

查看状态:
rndc -c /etc/rndc.conf status
重新加载zone文件
rndc -c /etc/rndc.conf reconfig
rndc -c /etc/rndc.conf reload

/usr/sbin/named -c /mnt/app/named/named.conf -g -u named

发表评论

邮箱地址不会被公开。