NO.5 配置DNS服务器:
配置环境:
|
服务器
|
客户机
|
操作系统
|
CentOS 5.5
|
Ubuntu 10.04
|
IP地址
|
192.168.136.128
|
192.168.136.130
|
Iptables
|
开启
|
无
|
Selinux
|
开启
|
无
|
所在网段
|
192.168.136.0/24
|
192.168.136.0/24
|
配置目标:
ns.hxmao.cn
|
192.168.136.128
|
www. hxmao.cn
|
192.168.136.2
|
mail. hxmao.cn
|
192.168.136.3
|
Bind是最为知名的DNS服务器软件,完整地实行了DNS协议规定的各种功能,运行于多个操作系统平台。
1.安装BIND服务器
提供BIND服务器功能的软件包有:
bind
|
BIND服务器的核心rpm包
|
bind-utils
|
|
bind-chroot
|
实现BIND服务器的chroot功能的软件包
|
caching-nameserver
|
提供BIND服务器主配置文件name.conf的模板
|
安装命令 yum install bind bind-utils bind-chroot caching-nameserver -y
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
补充讯息:
当安装完bind-chroot后,你会发现/etc/sysconfig/named的选项中有:
ROOTDIR=/var/named/chroot
然后进入/var/named/chroot目录后也会有/etc/、/dev、/var等目录,而且跟根目录下的/etc/、/dev、/var目录一模一样,这是怎么回事呢?其实:
chroot是change root的缩写,它可以将文件系统中某个特定的子目录作为进程的虚拟根目录,即改变进程访问所引用的"/"根目录的位置。
chroot对进程可以使用的系统资源、用户权限和所在目录进行严格控制,程序只在这个虚拟的根目录及子目录具有root权限,一旦离开该目录就没有任何权限了。
早期的Linux服务都是以root权限启动和运行的,但随着技术的发展,各种服务变得越来越复杂,bug和各种漏洞越来越多。***可以利用服务的漏洞***系统,从而轻松获得root的权限。为了减缓这种***带来的负面影响,现在的服务器软件通常设计成以root权限启动,然后服务器进程自行放弃root权限,再以某个低权限的系统账号来运行进程。例如Apache服务器的系统账号Apache;DNS服务器的系统账号named等。
基于同样的道理,chroot的使用并不能够说让程序本身安全了,它跟没有chroot的程序比较,漏洞和bug是一样多的,依然会被******,但是******的根目录对象不同了,程序本身的权限被严格限制在一个chroot目录中,***最多能够获取到该程序运行的虚拟根目录的权限;该虚拟根目录以外的一切系统权限都***都没有办法获取。
由于DNS服务器主要是域名解析,因此并不限制来访者的ip地址,chroot就变得非常有意义了。
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
2. BIND服务器的基本配置:
当成功安装bind-chroot后,named进程的虚拟根目录就变成了/var/named/chroot,以后运行named进程时,都会以这个为根目录。/var/name/chroot中的/etc/、/dev/、/var与实际根目录下的/var、/dev、/var一模一样。以后编辑所有的DNS服务器的配置文件都是在/var/name/chroot/这个虚拟的根目录中。
当bind-chroot安装后,命令bind-chroot-admin也会被安装,该命令可以禁用或启用chroot功能,也可以使虚拟根目录下的named的配置文件跟实际根目录下的配置文件进行同步。
bind-chroot-admid -d|-e 参数-d为disabled,禁用chroot;参数-e为enabled,启用chroot,参数-s为同步虚拟根目录与实际根目录的配置文件,在实际应用中应该启用chroot功能。
(1).准备工作:
在开始我们对DNS配置工作前,首先要做的准备工作:
编辑/etc/host.conf:
order bind hosts nis;决定解析域名时使用服务的顺序;
编辑/etc/resolv.conf:
#/etc/resolv.conf
nameserver 192.168.136.128 —列出域名服务器的IP地址,最多可以出现三个
nameserver 192.168.68.2
search localdomain ——指定域名搜索表,最多六个域名参数
options rotate
——常用的选项有:
rotate:打开客户端轮询查询选项.当nameserver中定义多个域名服务器时, 进行轮询查询;
nochecknames:禁止检测被查询的域名是否符合RFC952,当需要使用带有下划线"_"的域名时,
需要该项; inet6:可以使解析器查询ipv6.
开启iptables防火墙的53端口(DNS服务默认使用端口号为53):
注意第5、6条规则:
转载于:https://blog.51cto.com/hxmao/397774