zi663227 发表于 2018-5-11 10:48:34

Linux网络服务_DNS子域授权

Linux网络服务_DNS子域授权-Redhat Enterprise 5.9
  

  
  实验环境:server1、server2、cli1------都为RedhatEnterprise 5.9 Linux系统
  server1为父DNS服务器:解析tarena.com域中的主机
  server2为子DNS服务器:解析bj.tarena.com域中的主机
  

  目的:正常情况下,server1只能解析tarena.com域中的主机,通过子域授权,使server1可以解析bj.tarena.com域中的主机。
  

  具体步骤:分三部分...
  

  第一部分:配置服务器server1,使其能够成功解析tarena.com域中的主机
  

  1,安装dns必须的软件:bind、bind-chroot、caching-nameserver
  挂载光盘,进入Server目录,使用rpm -ivh安装三个软件包:
  
# rpm -ivh bind-9.3.6-20.P1.el5_8.5.x86_64.rpm
# rpm -ivh bind-chroot-9.3.6-20.P1.el5_8.5.x86_64.rpm
# rpm -ivh caching-nameserver-9.3.6-20.P1.el5_8.5.x86_64.rpm  
  

  2,修改dns的配置文件:
  /var/named/chroot/etc/named.conf和/var/named/chroot/etc/named.rfc1912.zones
  注:该文件是从named.caching-nameserver.conf文件拷贝过来的,注意拷贝的时候加选项p,否则会出现权限问题,导致无法启动named服务。
  具体配置内容如下:
  
# cd /var/named/chroot/etc/
# cp -p named.caching-nameserver.conf named.conf
# vim named.conf//编辑配置文件,内容修改如下
# cat named.conf
options {
listen-on port 53 { 192.168.1.1; }; //指定监听端口ip为主机ip地址
directory       "/var/named";
dump-file       "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query   { any; };       //修改为any,同意任何ip的解析请求
allow-query-cache { any; }; //将localhost修改为any
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
view localhost_resolver {
match-clients      { any; };    //相当于一个开关,同意任何ip地址通过
match-destinations { any; };    //同上
recursion yes;
include "/etc/named.rfc1912.zones";
};
# vim named.rfc1912.zones
# tail named.rfc1912.zones    //只需添加下面内容即可
zone "tarena.com" IN {
type master;
file "tarena.com.zheng";      //定义了正向解析文件名
};
zone "1.168.192.in-addr.arpa" IN {
type master;
file "tarena.com.fan";      //定义了反向解析文件名
};
#  
  

  3,修改区域配置文件:
  /var/named/chroot/var/named/tarena.com.zheng
  和/var/named/chroot/var/named/tarena.com.fan
  注:tarena.com.zheng文件是由/var/named/chroot/var/named/下的named.local文件拷贝过来的,注意,拷贝的时候需要加选项-p,避免权限引起的错误。
  

  具体配置如下:
  
# pwd
/var/named/chroot/etc
# cd ../var/named/
# pwd
/var/named/chroot/var/named   //注意配置文件的位置
# cp -p named.local tarena.com.zheng
# vim tarena.com.zheng
# cp -p tarena.com.zheng tarena.com.fan
# vim tarena.com.fan
# ll tarena.com.*       //注意两个文件的所属组为named
-rw-r----- 1 root named 489 03-05 19:39 tarena.com.fan
-rw-r----- 1 root named 483 03-05 19:38 tarena.com.zheng
# cat tarena.com.zheng
$TTL    86400
@       IN      SOA   tarena.com. root.tarena.com.(
1997022700 ; Serial
28800      ; Refresh
14400      ; Retry
3600000    ; Expire
86400 )    ; Minimum
IN      NS      server1.tarena.com.   //域名服务器的名字
server1 IN      A       192.168.1.1   //正向解析域名服务器地址
www   IN      A       192.168.1.80      //正向解析www服务器的地址
mail    IN      A       192.168.1.23      //正向解析mail服务器的地址
# cat tarena.com.fan
$TTL    86400
@       IN      SOA   tarena.com. root.tarena.com.(
1997022700 ; Serial
28800      ; Refresh
14400      ; Retry
3600000    ; Expire
86400 )    ; Minimum
IN      NS      server1.tarena.com. //指定域名服务器的名称
1       IN      PTR   server.tarena.com.//反向解析域名服务器的地址
80      IN      PTR   www.tarena.com.   //反向解析www服务器
23      IN      PTR   mail.tarena.com.      //反向解析mail服务器
#  
  

  4,启动named服务
  
# service named start
启动 named:                                             [确定]
# service named restart
停止 named:                                             [确定]
启动 named:                                             [确定]
#  
  

  5,并在客户端上验证是否能够解析tarena.com中的主机
  在客户机cli1上测试是否能成功解析,如下所示,可以成功解析。
  注:在测试的时候,需要修改cli1的dns地址为192.168.1.1,也就是/etc/resolv.conf文件
  
# cat /etc/resolv.conf   //指定客户机的dns地址为192.168.1.1
search tarena.com
nameserver 192.168.1.1
# host www.tarena.com
www.tarena.com has address 192.168.1.80
# host 192.168.1.23
23.1.168.192.in-addr.arpa domain name pointer mail.tarena.com.
#  
  

  第二部分:配置服务器server2,使其能够成功解析bj.tarena.com域中的主机
  

  1,和第一部分的第一步相同,安装bind、bind-chroot、caching-nameserver软件包
  

  2,修改dns配置文件:
  /var/named/chroot/etc/named.conf和/var/named/chroot/etc/named.rfc1912.zones
  

  具体内容如下:
  
# cat named.conf
options {
listen-on port 53 { 192.168.1.2; };   //此处修改
#       listen-on-v6 port 53 { ::1; };
directory       "/var/named";
dump-file       "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query   { any; };         //此处修改
allow-query-cache { any; };         //此处修改
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
view localhost_resolver {
match-clients      { any; };      //此处修改
match-destinations { any; };      //此处修改
recursion yes;
include "/etc/named.rfc1912.zones";
};
# tail named.rfc1912.zones    //下面的内容添加到该文件内即可
zone "bj.tarena.com" IN {
type master;
file "bj.tarena.com.zheng";
};
zone "1.168.192.in-addr.arpa" IN {
type master;
file "bj.tarena.com.fan";
};
#  

  
  3,修改区域配置文件:
  /var/named/chroot/var/named/bj.tarena.com.zheng
  和/var/named/chroot/var/named/bj.tarena.com.fan
  

  具体配置如下:
  
# cp -p named.local bj.tarena.com.zheng
# vim bj.tarena.com.zheng
# cp -p bj.tarena.com.zheng bj.tarena.com.fan
# vim bj.tarena.com.fan
# ll bj.tarena.com.*
-rw-r--r-- 1 root named 355 03-05 19:56 bj.tarena.com.fan
-rw-r--r-- 1 root named 339 03-05 19:55 bj.tarena.com.zheng
# cat bj.tarena.com.zheng
$TTL 86400
@               IN SOAbj.tarena.com. root.bj.tarean.com. (
2014030401 ; serial
28800      ; refresh (8 hours)
14400      ; retry (4 hours)
3600000    ; expire (5 weeks 6 days 16 hours)
86400      ; minimum (1 day)
)
NS      server2.bj.tarena.com.
server2               A       192.168.1.2
www                     A       192.168.1.180
mail                  A       192.168.1.123
# cat bj.tarena.com.fan
$TTL 86400
@               IN SOAbj.tarena.com. root.bj.tarean.com. (
2014030401 ; serial
28800      ; refresh (8 hours)
14400      ; retry (4 hours)
3600000    ; expire (5 weeks 6 days 16 hours)
86400      ; minimum (1 day)
)
NS      server2.bj.tarena.com.
2               PTR   server2.bj.tarena.com.
180             PTR   www.bj.tarena.com.
123             PTR   mail.bj.tarena.com.
#  

  
  4,启动named服务:
  
# service named start
启动 named:                                             [确定]
# service named restart
停止 named:                                             [确定]
启动 named:                                             [确定]
#  

  
  5,在客户端上验证是否能够解析bj.tarena.com中的主机
  修改cli1的dns地址,然后测试,可以看到,能够成功解析。
  

# cat /etc/resolv.conf
search tarena.com
nameserver 192.168.1.2
# host www.bj.tarena.com
www.bj.tarena.com has address 192.168.1.180
# host mail.bj.tarena.com
mail.bj.tarena.com has address 192.168.1.123
# host 192.168.1.123
123.1.168.192.in-addr.arpa domain name pointer mail.bj.tarena.com.
#  

  
  第三部分:修改server1的dns配置文件,实现---客户端cli1的dns地址指向server1,能够解析bj.tarena.com域中的主机。
  

  1,修改server1的dns区域配置文件的正向解析文件:
  /var/named/chroot/var/named/tarena.com.zheng
  具体配置如下:
  
# pwd
/var/named/chroot/var/named
# vim tarena.com.zheng
# cat tarena.com.zheng
$TTL    86400
@       IN      SOA   tarena.com. root.tarena.com.(
1997022700 ; Serial
28800      ; Refresh
14400      ; Retry
3600000    ; Expire
86400 )    ; Minimum
IN      NS      server1.tarena.com.
bj.tarena.com.IN      NS      server2.bj.tarena.com.
server2.bj.tarena.com.IN      A       192.168.1.2
server1 IN      A       192.168.1.1
www   IN      A       192.168.1.80
mail    IN      A       192.168.1.23
# service named restart
停止 named:                                             [确定]
启动 named:                                             [确定]
#  

  
  2,在客户端下验证,指定server1为客户端cli1的dns服务器,测试是否能够成功解析
  www.bj.tarena.com域中的主机
  

# vim /etc/resolv.conf
# cat /etc/resolv.conf
search tarena.com
nameserver 192.168.1.1
# host www.bj.tarena.com
www.bj.tarena.com has address 192.168.1.180
#   

  
  注:由于只修改了server1的正向解析文件,所以,只能cli1只能进行正向解析,如果需要,可以修改server1的反向文件,也能实现反向解析。
  

  扩展:配置子域服务器,使其能够解析主DNS服务器tarena.com域中的主机
  

  
  1,修改子域服务器server2的配置文件named.conf
  在option字段中添加 forwarders {192.168.1.1; };
  

  2,重启named服务:service named restart
  

  3,在客户端验证
# vim/etc/resolv.conf
# cat/etc/resolv.conf
search tarena.com
nameserver 192.168.1.2
# host www.tarena.com
www.tarena.com has address 192.168.1.80  


  
页: [1]
查看完整版本: Linux网络服务_DNS子域授权