文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>DNS配置及其高级应用

DNS配置及其高级应用

时间:2010-01-05  来源:ekookc


Domain  Name  Server
1.使用bind来安装DNS
    # yum install bind  服务器软件包
    # yum install bind-chroot  安全考虑 用来将bind与OS分离出来 虚拟的根
    # yum install caching-nameserver 模板
2.了解bind的目录结构
    # grep -v ^# /etc/sysconfig/named
    ROOTDIR=/var/named/chroot
    [root@n0d chroot]# ls *
    dev:
    null  random  zero
    etc:
    localtime  named.caching-nameserver.conf  named.rfc1912.zones  rndc.key
    var:
    named  run  tmp
    [root@n0d chroot]#
3.以google.com为例设置正解和反解域
    首先修改主配置文件
    [root@n0d ~]# grep  any  /etc/named.caching-nameserver.conf
        listen-on port 53 { any; };
        allow-query     { any; };
        match-clients      { any; };
        match-destinations { any; };
     建立正反解查询
     [root@n0d ~]# tail  -8  /etc/named.rfc1912.zones
     zone "ekookc.com" IN {
        type master;
        file "ekookc.zone.db";
     };
     zone "1.168.192.in-addr-arpa" IN {
        type master;
        file "ekookc.arpa.db";
     };

     复制模板并修改成自己需要的配置文件
     [root@n0d named]# cd  /var/named/chroot/var/named/
     [root@n0d named]# cp  localdomain.zone ekookczone.db
     [root@n0d named]# cp  named.local ekookc.arpa.db
     [root@n0d named]# cat  ekookc.zone.db

$TTL 86400
@ IN SOA ekookc root (
                                        42 ; serial (d. adams)
                                        3H ; refresh
                                        15M ; retry
                                        1W ; expiry
                                        1D ) ; minimum
                IN NS dns.ekookc.com
www IN A 192.168.1.245
dns IN A 192.168.1.245

      [root@n0d named]# cat  ekookc.arpa.db
     

$TTL 86400
@ IN SOA @ root.localhost. (
                                      1997022700 ; Serial
                                      28800 ; Refresh
                                      14400 ; Retry
                                      3600000 ; Expire
                                      86400 ) ; Minimum
             IN NS dns.ekookc.com
245 IN PTR dns.ekookc.com
245 IN PTR www.ekookc.com

      
       修改区域文件的拥有者
       [root@n0d named]# chown root.named  google.com.*
      
       查看配置文件有没有语法错误
   
    [root@n0d named]# cd  /var/named/chroot/etc/
    [root@n0d named]# named-checkconf /etc/named.caching-nameserver.conf            ------检查主配置文件,没有提示就是正确的
   
    [root@n0d etc]# named-checkzone ekookc.zone.db         ------检查区域配置文件
    zone ekookc/IN: loaded serial 42
    OK
               

PS:需要特别注意的是,/etc/resolv.conf文件中的内容会影响你实验的结果,第一个nameserver一定要写你正在实验的机器上的ip地址,要不会出现解析错误


明天写dns的高级应用,该睡觉了..

4.搭建DNS主从服务器

修改主机配置文件
        [root@n0d named]#  tail -n 12 /var/named/chroot/etc/named.rfc1912.zones

        zone "google.com" IN {
                type master;
                file "google.com.zone.db";
                allow-transfer {192.168.1.32;};
        };

        zone "1.168.192.in-addr.arpa" IN {
                type master;
                file "google.com.arpa.db";
                allow-transfer {192.168.1.32;};
        };
        [root@n0d named]#

        在主机的zone文件中加入从机做NS
                添加一条记录并做解析
        正解:
        dns             IN NS           dns.google.com.
                        IN A            192.168.1.32
        反解:
        32              IN NS           dns.google.com.
                        IN PTR          dns.google.com.
        如不修改则只能向从机传递zone文件 从机不会随主机更新正解反解文件而更新


        修改从机配置文件 无需建立zone文件
        [root@stu32 named]# tail -n 12 /var/named/chroot/etc/named.rfc1912.zones

        zone "google.com" IN {
                type slave;
                file "slaves/google.com.zone.db";
                masters {192.168.1.31;};

       };

        zone "1.168.192.in-addr.arpa" IN {
                type slave;
                file "slaves/google.com.arpa.db";
                masters {192.168.1.31;};
        };
        [root@stu32 named]#


        测试
        重新启动主从服务器,zone文件会自动复制过去
        再向主服务器中添加新的正反记录并修改版本号,重新启动主后,从即可更新记录

5.TSIG 事务签名的方式
    搭建好主从服务器后,其实还有个问题需要我们考虑,就是安全问题,从上面的配置过程可以看出,在主从服务器的传输过程中,并没有做什么验证之类的工作,如果有黑客发现了主DNS服务器,那么他也可以做个从服务器,把主服务器上的数据拷贝到他的机器上,这是一个很大的安全隐患,那么怎样解决呢,TSIG事物签名可以增加DNS服务器的安全系数.
   
以下是配置过程

[root@n0d chroot]# dnssec-keygen   -a  hmac-md5  -b 128   -n  HOST   abc
       
        [root@n0d chroot]# cat  Kabc.+157+30879.key
        abc. IN KEY 512 3 157 I9clluxw//lIiSLuEQ7ApA==

        设置主服务器
        [root@n0d chroot]# vim  /var/named/chroot/etc/named.rfc1912.zones                       
        在最上面添加如下信息
        key   abckey{
                algorithm    hmac-md5;
                secret  "I9clluxw//lIiSLuEQ7ApA==";
        }
       
        在最下面
        zome   "google.com"  { 
                type  master;  
                file  "google.com.zone";
                allow-transfer { key abckey };
        }


        设置从服务器
       
        key   abckey{
                algorithm    hmac-md5;
                secret  "I9clluxw//lIiSLuEQ7ApA==";
        }
       
        在最下面
        zone   "google.com"  { 
                type  slave;   
                file  "google.com.zone";
                masters  {192.168.1.254  key  abckey};
        }

6.DNS子域授权

1 google.com 192.168.1.254                          :创建一个DNS域为:google.com
2 sales.google.com 192.168.1.188                 :创建一个DNS域为:sales.google.com
3 授权在looking.com域中的配置文件添加子域的信息
sales                 IN NS     dns.sales.google.com.
dns.sales              IN A      192.168.1.188

4 测试
在子域中添加
sales.google.com.        IN NS       dns.sales.google.com.
dns.sales.google.com.    IN A            192.168.1.188
www.sales.google.com.        IN A            192.168.1.190
ftp.sales.google.com.        IN A            192.168.1.238

当客户的DNS指向主域,然后
host www.sales.google.com
host ftp.sales.google.com

7.视图功能:一般用于双线连接

[root@n0d etc]# pwd
/var/named/chroot/etc
[root@n0d etc]# vim named.rfc1912.zones

//acl cnc_acl { 192.168.1.2; 192.168.1.4; };                                    :acl定义的IP段,目前被注释掉
//acl tel_acl  { 192.168.1.188;192.168.1.10; };                         :acl定义的IP段,目前被注释掉
include "/etc/cnc.txt";                                         :指向含有IP的文件(文件内容在下面,此处的/为/var/named/chroot)
include "/etc/tel.txt";                                         :指向含有IP的文件
view cnc {                                                              :定义联通段ip所走的路由
        match-clients      { cnc_acl; };
        match-destinations { any; };
        recursion yes;
        //include "/etc/named.rfc1912.zones";
        zone "google.com" IN {
                type master;
                file "google.com.zone.cnc";                     :根据需要自定义正向域文件内容,可以COPY模板
        };

};
view tel {                                                              :定义电信段IP所走的路由
        match-clients      { tel_acl; };                                :指向含有IP的文件(文件内容在下面,此处的/为/var/named/chroot)
        match-destinations { any; };
        recursion yes;
//      include "/etc/named.rfc1912.zones";
        zone "google.com" IN {
                type master;
                file "google.com.zone.tel";                                     :根据需要自定义正向域文件内容,可以COPY模板
        };
};
                         






排行榜 更多 +
翌日波奇狗的历险记手机版下载

翌日波奇狗的历险记手机版下载

休闲益智 下载
怪兽远征安卓版下载

怪兽远征安卓版下载

角色扮演 下载
谷歌卫星地图免费版下载

谷歌卫星地图免费版下载

生活实用 下载