三、方案实施步聚

1.基本设置

下面结合实际搭建过程和namd.conf的具体设置,详细说明应该注意的方面。在本例中,选用linux.com做为本地域名,nsl为本地主机名,IP地址为61.56.123.5这是一个虚拟的电信IP地址)。为了让网通和电信的用户都能快速访问本网站,网站另外还有一个网通IP地址。

本例把网通命名为cnc,电信命名为tel,定义了两个域名来同时使用一台DNS服务器,并且在/var/named/下建立相应的目录结构和域名文件。

◆对应区文件的建立

在/var/named下分别建立相应的cnc和tel目录,在目录下分别建立相应的区文件 linux.com、db.linux.com和idg.linux.com等。例如,网通即cnc目录中建立的linux.com
文件的内容如下:

  1. $TTL     900  
  2. @ IN      SOA  
  3. nsl.linux.com.  
  4. root.linux.com.(  
  5.                20050615;Serial  
  6.                28800;  Refresh   
  7.                14400; Retry  
  8.                3600000;Expire  
  9.                86400);Minimum  
  10. linxu.com. INnsl.linux.com   
  11. nsl IN  A 61.56.123.5  
  12. aaa IN  A 221.12.160.93   bbb IN  A 221.12.160.93  
  13. linux.com. IN 221.12.160.92  
  14. mail2 IN A 61.157.39.100 

上述内容只是一个列子,各公司或企业可以根据不同要求具体给出区文件的内容。Tel 目录中的文件内容与些类似,修改相应IP地址即可。

◆主配置文件的设定

这里将根据网通和电信的IP地址,让DNS对不同网段返回不同的地址解析。

  1. options{  
  2. directory“/var/named”;  
  3.   //配置文件所在目录  
  4.   Pid-file “/var/run/named.pid”;  
  5.   //进程守护文件  
  6.   Statistics-file “/var/run/named.stats”;  
  7. //状态输出文件,在rndc中用到  
  8. //query-source address *port 53;  
  9. allow-recursion {ournets;};   
  10. };  
  11.   //a caching only nameserver  config  
  12.    
  13. Controls {   
  14. inet 127.0.0.1 allow { localhost ;}keys {rndckey } ;  
  15.      };  
  16.     //acl 定义网通IP地址池,即如下IP地址访问网站时将指引到网通相应的区文件中。  
  17.    acl “subnet” {  
  18.    61.207.0.0/16;  
  19.    168.160.224.0/19;  
  20.    ……  
  21.   };  
  22.   view “baoku” {  
  23.    match-clients {“subnet”;  
  24.  
  25.   //注意,在使用View功能 时,一定要把整个named.conf的设置语句都包括在view里面,否则最后会出现错误。 

如上设置完成后,当网通用户和电信用户访问该网站时,DNS的View功能会根据他们不同的地址段指向分别相对应的区文件。

2.问题分析

在系统设置的过程中“named-g”起到很大作用,发现了很多DNS的问题,包括named权限问题,以及区文件里的语法错误等。通过具体实践,读者会有更深切的体会。如上设置完成后是否就可以顺利地看到结果了呢?不然。这还需要根据DNS服务提供的具体情况。由于笔者公司是由DNS服务提供商来提供网站解析服务,所以需要面对一个如何让所配置DNS服务合法起作用的问题,即如何使用户在访问该网站自己的DNS服务器解析。通过与服务提供商协调,一家DNS服务提供商允许我们修改其区文件,在其中添加一条A记录指向网站自己的DNS服务器,从而解决了这一问题。当建立了Slave辅助服务器后,最好不要采取这一方式,以避免引起混淆。这种情况下可以直接注册一个自己的DNS服务。

3.加强安全

本文只是介绍了使用BIND View功能架设DNS简单过程,其中还有很多东西值得深究,比如网络加强安全问题等。本例中,笔者通过关闭该DNS服务器上的所有无关端口,并建立相应iptables防火墙规则来保证网络安全。还可以使用最新BIND 9版本来设置一个在chroot环境下运行的BIND的安全性。将BIND chroot到/chnamed目录运行,则named在运行时将认为/chnamed是实际的根目录,即使named有某种安全漏洞被人攻破,也只能存取到该目录为止。BIND 9还新增了很多关于安全性的设定项,读者可以根据需要自行具体设定。限于篇幅下次再给大家介绍BIND 9安全设置。

51CTO.com独家特稿,非经授权请勿转载,合作站点转载须注明原文出处及作者!】


相关内容

    暂无相关文章