DNS集群,远程更新,远程更新的加密

DNS集群:

当只有一个DNS服务器时,如果访问量较大,服务器很可能会出现崩溃,所以需要再添加一些DNS服务器来分担DNS服务器的压力。
所有DNS服务器的内容都是一样的。当主DNS更改内容时,相应的,从DNS也会更改,但仅仅只需要更改主DNS就可以了,下面就介绍以下如何配置DNS集群。
假设desktop为主DNS,server为辅助DNS
1.修改虚拟机server的IP为172.25.75.200与desktop的IP处在同一网段


2.给server安装bind  yum install bind -y


3.vim /etc/named.conf 更改主配置文件,与之前相同
4.vim /etc/named.rfc1912.zones 更改如下:
 19 zone "localhost" IN {
 20         type master;
 21         file "named.localhost";
 22         allow-update { none; };
 23 };
 24 zone "westos.com" IN {
 25         type slave;     从属设备
 26         masters { 172.25.75.100; };    主设备为172.25.75.100,也就是desktop
 27         file "slaves/westos.com.zone";  重启服务后,会自动生成westos.com.zone文件在/var/named/slaves目录下
 28         allow-update { none; };
 29 };
复制19-23行,粘贴到下面,然后更改为24-29行的内容


5.主DNS服务器还原到之前的环境,删掉多向DNS解析,此处用不到。
6.主DNS vim /etc/named.rfc1912.zones   在第27行后面加上also-notify { 172.25.254.216; };告诉216服务器,当主DNS更改内容时,辅助DNS也要更改。
在企业7版本之前,还需要添加allow-transfer { 172.25.254.216; }; 允许216服务器同步此服务器,企业7版本之后不需要添加
7.重启desktop(主DNS)服务  systemctl restart named
8.重启server(辅助DNS)服务 systemctl restart named,当重启完服务后会在slaves目录下生成一个文件,而且此文件里面是乱码,被加密了。如果没有生成,那就可能是两边火墙没有关,或者一个火墙没关,或者IP不对。


但仅仅设置这些都是不够的,辅助DNS依然不会因为主DNS更改而更改
因此,这里还需要了解一个知识:
在主DNS下 vim /var/named/westos.com.zone   打开此文件
$TTL 1D
@       IN SOA  dns.westos.com. liming.westos.com. (
                                        2       ; serial    注意:serial是辅助DNS标识,更改此文件内容时,必须更改这个标识,辅助DNS才会识别,每次更改内容都需要更改标示。
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
                NS      dns.westos.com.
dns               A       172.25.75.100
www             A       172.25.75.201
li                    A       172.25.75.102
liming        CNAME   xupt
xupt            A       172.25.75.103
westos.com.     MX 10 172.25.75.215.
~                                         
测试:先在主DNS下只修改www.westos.com的解析地址,不修改serial的值,然后在辅助DNS下dig测试,发现辅助DNS并没有更改过来,然后在主DNS下修改serial的值,然后在辅助DNS下dig测试,发现辅助DNS已经修改过来了。

DNS远程更新:

在desktop(被更新的DNS的主机)下配置:
1.更改权限 chmod 770 /var/named/   为什么要更改权限呢,因为当更新DNS时,其实是在/var/named/下写了一个数据,注意不是文件,如果没有权限,就不能写入数据,也就不能更新DNS


2.允许更新,vim /etc/named.rfc1912.zones ,在此文件下的28行更改为allow-update { 172.25.75.200; };   允许200更新


3.如果内核级火墙(getenforce)为Enforcing,那么此时named_write_master_zones是关闭的,所以需要打开:setsebool -P named_write_master_zones on
注意:最好备份一个westos.com.zone文件,以便还原。


在server(去更新别人的DNS的主机)下输入命令:
nsupdate
> server 172.25.254.116    要更新的DNS
> update add test.westos.com 86400 A 172.25.254.111   更新的内容是添加一个域名 test.westos.com  86400表示一天,A表示域名正向解析,解析为172.25.254.111
> send

如果更新被拒绝,那么就要检查以下是否重启了服务,目录权限是否可以被named可写,防火墙等等。
如果更新成功,此时可以在desktop的/var/named/下看到一个.jnl的数据,重启desktop的服务,就会发现要更新的DNS已经更新。

 

DNS远程更新的加密

(被更新的是desktop,执行更新的是server)

desktop下:
1.dnssec-keygen -a HMAC-MD5 -b 128 -n HOST westoskey   生成公私钥,在那个目录下执行此命令,就会在那个目录下生成公私钥。     -a表示algorithm(算法的意思)HMACMD5 是从 MD5 哈希函数构造的一种键控哈希算法,被用作基于哈希的消息验证代码
(HMAC)。-b表示bits(加密多少位)-n是是生成钥匙的类型,westoskey是钥匙的名字。


2.cp -p /etc/rndc.key /etc/westos.key   复制一个加密的模板


3.vim /etc/westos.key   修改文件的加密字符和钥匙名称  加密字符是生成公私钥的加密字符,可以cat查看然后复制,钥匙名称是前面生成公私钥的名称,也就是westoskey


4.vim /etc/named.conf    include"/etc/westos.key";   包括的这个路径是前面模板复制的路径


5.vim /etc/named.rfc1912.zones   在此文件的允许更新改为 key westoskey   westoskey是前面生成公私钥的名称。


6.重启服务 systemctl restart named
7.复制公私钥到其他服务器,只有有公私钥的服务器才可以更新DNS,两者缺一不可
  scp Kwestoskey.+157+32991.* root@172.25.254.216:/mnt/
server下:
nsupdate -k Kwestoskey.+157+32991.private  或者nsupdate -k Kwestoskey.+157+32991.key,两个钥匙都可以
> server 172.25.254.116               要更新的DNS
> update delete www.westos.com        更新内容为,删除www.westos.com。
> send

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值