linux系统高速缓存DNS之DNS辅助集群、远程更新和远程加密更新

1、DNS辅助集群
  • DNS辅助服务器是一种容错设计,考虑的是一旦DNS主服务器出现故障或因负载太重无法及时响应客户机请求,辅助服务器将挺身而出为主服务器排忧解难。辅助服务器的区域数据都是从主服务器复制而来
  • DNS服务器一般在用的时候,为了缓解服务器的压力,多使用一个主DNS服务器,多个副DNS服务器,这些DNS服务器就组成了一个 DNS集群 。
  • 实验使用一个主dns以及一个副dns进行实验说明,一般需要多个副dns服务器
  • 主dns配置
  • 切换路径查看 有哪些文件
[root@server ~]# cd /var/named/
[root@server named]# ls
192.168.100.ptr  dynamic   named.empty      named.loopback  westos.com.zone
data             named.ca  named.localhost  slaves

  • 编辑named的主配置文件
[root@server named]# vim /etc/named.conf

在这里插入图片描述

在这里插入图片描述

[root@server named]# systemctl restart named   重启服务
  • vim /etc/named.rfc1912.zones 设置关于DNS服务机的信息

在这里插入图片描述

  • vim /var/named/westos.com.zone 真正的域名解析文件
$TTL 1D
@       IN SOA  dns.westos.com.  ren.westos.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
                NS      dns.westos.com.
dns             A         192.168.100.200
www 		A	  192.168.100.150
bbs           CNAME   node1.a.westos.com.
node1.a         A       192.168.100.111
node1.a         A       192.168.100.222
westos.com.     MX   1  192.168.100.188.

systemctl restart named.service #重新启动服务
systemctl stop firewalld.service #关闭防火墙

  • 副dns的配置文件

设置dns相关的环境配置

yum  install bind -y 下载DNS
systemctl start named.service #启动服务
systemctl enable named.service #设置服务开机自动启动
systemctl stop firewalld.service #关闭防火墙

编辑dns的主配置文件

vim  /etc/named.conf    bind的配置文件
 listen-on port 53 { any; };  #控制服务倾听的ipv4地址	
 allow-query     { any; };  #允许哪些客户端可以向DNS服务器询问信
 dnssec-validation no;              不检查更新设置,若为YES会阻止同步

systemctl restart named 重启服务

编辑副配置文件
vim /etc/named.rfc1912.zones
在这里插入图片描述

  • systemctl restart named 重启服务

  • 测试:
    更改域名的指向

[root@clients ~]# vim /etc/resolv.conf 
# Generated by NetworkManager
nameserver   192.168.100.200

dig www.westos.com检验,为的是与后边的实验做对比

在这里插入图片描述

  • 当主dns的数据发生改变的时候,会自动同步数据到副dns,但是在改变主dns的解析数据的时候,需要同时改变/var/named/toto.com.zone 文件中serial 的值,只有当serial的值发生改变,数据才会同步到副dns。

  • 修改主DNS解析数据的值,改变值以后在查看

  • vim /var/named/westos.com.zone
    在这里插入图片描述
    测试端 dig www.westos.com 进行查看

在这里插入图片描述

1、DNS远程更新

服务端

编辑副配置文件

vim /etc/named.rfc1912.zones

在这里插入图片描述

客户机

编辑更新

[root@clients ~]# nsupdate
> server 192.168.100.200
> update add bbo.westos.com 86400 A 192.168.100.123
> send
> quit

客户端测试可以更新
在这里插入图片描述

在主服务端 测试

在这里插入图片描述

  • 因为是没有检测到,所以是不能提供更新的,只能是询问114 网络

3、DNS远程加密更新

  • 使用指定ip更新的方式,虽然可以对dns解析数据进行跟新,但是由于别的主机也可以将其ip设置成允许更新的ip,导致数据不安全,可以采用加密的方式进行远程更新。
dns服务器设置:
  • 1、生成加密文件
[root@server ~]# cd /mnt
[root@server mnt]# ls
[root@server mnt]# dnssec-keygen -a HMAC-MD5  -b   128  -n   HOST  bbo
Kbbo.+157+12510
[root@server mnt]# ls
Kbbo.+157+12510.key  Kbbo.+157+12510.private
  • 生成加密文件,过程中可能出现卡顿,需要在主服务器中晃动鼠标或者敲击键盘生成加密字符。
  • -a 加密方式 -b 加密字符长度 -n 加密用途
  • 2、建立新的密钥文件
[root@server mnt]# cp -p /etc/rndc.key    /etc/bbo.key   复制模板,制作新的加密文件

查看密钥

[root@server mnt]# cat Kbbo.+157+12510.key
bbo. IN KEY 512 3 157 zJvuGgP9RM62EOQt4USsOw==

生成新的加密文件

[root@server named]# vim /etc/bbo.key
[root@server named]# cat  /etc/bbo.key
key "bbo" {
	 algorithm hmac-md5;
	 secret "zJvuGgP9RM62EOQt4USsOw==";      和之前的密钥文件字符相统一
};
[root@server named]# 

编辑DNS主配置文件

[root@server named]# vim /etc/named.conf 

在这里插入图片描述

编辑DNS副配置文件

[root@server named]# vim /etc/named.rfc1912.zones

在这里插入图片描述

将密钥传输给测试端,因为测试端是没有密钥的,所以时需要服务端需要给的

[root@server mnt]# scp   Kbbo.+157+12510.*   [email protected]:/mnt/
[email protected]'s password: 
Kbbo.+157+12510.key                                                         100%   47    53.3KB/s   00:00    
Kbbo.+157+12510.private                                                     100%  165   160.5KB/s   00:00

测试端:

[root@clients ~]# cd /mnt
[root@clients mnt]# ls
Kbbo.+157+12510.key  Kbbo.+157+12510.private
[root@clients mnt]# nsupdate -k Kbbo.+157+12510.private 
> server 192.168.100.200
> update add jjo.westos.com  86400 A  192.168.100.77
> send
> quit             拥有bbo密钥的才可以同步更新
[root@clients mnt]# 
  • 如果是需要测试的话,可以给服务端新建立一个正象解析的域名,然后用客户端dig 域名 查看更新没有。

  • 当远程主机中不存在加密文件的时候b不可以对该dns数据进行更新。

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/liuchuang11/article/details/89800399