CentOS上配置主DNS服务器的简易指南
| 2014-05-26 15:14:00 评论: 7
任何运作中的域名至少有两台DNS服务器,一台称为主域名服务器(比如叫做ns1),而另一台称为从域名服务器(比如叫做ns2)。这些服务器通常用于故障转移:如果一台宕机,另外一台就激活成为DNS服务器(译注:此处译者有不同意见,事实上两个或更多的DNS服务器是共同工作的,并不是第一台停止服务后,第二台才接替工作。解析器是随机选择一个DNS服务器进行询问,如果超时则会询问下一个,这是多个DNS的故障容错机制)。也可以实现包括负载均衡、防火墙和集群在内的更为复杂的故障转移机制。
一个域的所有DNS条目都会被添加到主域名服务器,从服务器只会根据主服务器上的SOA记录的序列号参数从主服务器同步所有信息。
此教程将会讲述如何创建一台在CentOS上运行的主DNS服务器。请注意,本教程中提到的DNS服务器将会是一台开放DNS服务器,这也就是说该服务器将会回应来自任何IP地址的查询。对于DNS服务器的访问控制将在此教程中讨论(译注:开放的DNS服务器是一个安全隐患)。
在开始之前,我想要提一下的是,DNS可以在chroot环境中配置,也可以在非chroot环境中配置。chroot环境将DNS服务器限制在系统中某个特定目录中,以避免让服务器具有系统级的访问权限。在此环境中,任何DNS服务器的安全漏洞不会导致整个系统的破坏。将DNS服务器置于chroot环境中,对于部署测试也很有用。
目标
我们将在基于域名example.tst的测试环境中配置一台DNS服务器,这个域名是虚假的(并不真实存在的)。这样,我们就不会意外干扰到其它真实的域名。
在该域中,有以下三台服务器。
服务器 | IP地址 | 托管的服务 | 完全限定域名(FQDN) |
Server A | 172.16.1.1 | mail.example.tst | |
Server B | 172.16.1.2 | Web, FTP | www.example.tstftp.example.tst |
Server C | 172.16.1.3 | Primary DNS server | ns1.example.tst |
我们将会配置一台主域名服务器,并添加上表中必要的域和DNS记录。
设置主机名
所有的主机名必须以完全限定域名的方式正确定义,可以通过以下方法完成设置。
# vim /etc/sysconfig/network
- linux 2014-07-28 10:02
- 其实搭建容易,麻烦在需要了解精通一系列DNS的各种机制、规范什么的。
- arhool 2014-07-28 09:03
- 讲得挺多的。看WIN下搭个DNS也是挺费事的。
- 微博评论 2014-05-26 20:03
- 回复@闪电川冰:已经有了、文内有链接。当然距离一个安全的dns还很远。
- 微博评论 2014-05-26 18:33
- 回复@Linux中国:好的 持续关注中...
- 微博评论 2014-05-26 16:33
- 回复@闪电川冰:是的,这个是简单指南,其中关于如何禁止开放查询,会在另外一篇,我们还没翻译。事实上。DNS之复杂,远非一篇小文能说清楚,这里只是一个简单引导。
- 微博评论 2014-05-26 16:33
- 貌似没有 禁用 递归啊?
- 微博评论 2014-05-26 15:45
- 马,正好要用