Linux学习笔记--21(使用Bind提供域名解析服务 2)

安全的加密传输

互联网中大多数DNS服务器都是基于BIND域名解析服务搭建的,而bind服务程序为了提供安全的解析服务,已经对TSIG(RFC 2845)加密机制提提了支持。
TSIG主要是利用密码编码的方式来保护区域信息的传输(Zone Transfer),即保证了DNS服务器之间传输域名区域信息的安全性。
查看下从服务器的同步情况。
因为是接着之前部署从服务器的,所以从服务器还有同步,进行删除。

[root@linuxcool slaves]# ls
192.168.153.arpa  linuxprobe.com.zone
[root@linuxcool slaves]# rm -rf *
[root@linuxcool slaves]# ls
[root@linuxcool slaves]# 

第一步:主服务器中生成密钥。
dnssec-keygen命令用于生成安全的DNS服务密钥,格式为”dnssec-keygen[参数]”
dnssec-keygen命令的常用参数
在这里插入图片描述
用命令生成一个主机名称为master-slave的128位HMAC-MD5算法的密钥文件。
该命令执行后默认在当前目录中生成公钥和私钥文件,需要把私钥文件中Key参数后面值记录下来,要将其写入传输配置文件中。

root@linuxprobe ~]# dnssec-keygen -a HMAC-MD5 -b 128 -n HOST master-slave
Kmaster-slave.+157+56215

[root@linuxprobe ~]# ls -l Kmaster-slave.+157+56215.*
-rw-------. 1 root root  56 May 21 05:54 Kmaster-slave.+157+56215.key
-rw-------. 1 root root 165 May 21 05:54 Kmaster-slave.+157+56215.private

[root@linuxprobe ~]# cat Kmaster-slave.+157+56215.key
master-slave. IN KEY 512 3 157 C5o0TshCxZQTvtz0AdAVuA==
[root@linuxprobe ~]# 

第二步:在主服务器中创建密钥验证文件。到bind服务程序用于保存配置文件的目录,把刚生成的密钥名称、加密算法和私钥加密字符串按照格式写入到tansfer.key传输配置文件中。为了安全将文件所属组修改成named,并将文件权限设置的要小一点,然后把该文件做一个硬链接到/etc目录中。

[root@linuxprobe ~]# cd /var/named/chroot/etc/
[root@linuxprobe etc]# vim transfer.key
[root@linuxprobe etc]# cat transfer.key 
key "master-slave" {
algorithm hmac-md5;
secret "C5o0TshCxZQTvtz0AdAVuA==";
};
[root@linuxprobe etc]# chown root:named transfer.key 
[root@linuxprobe etc]# chmod 640 transfer.key 
[root@linuxprobe etc]# ln transfer.key /etc/transfer.key
[root@linuxprobe etc]# 

第三步:开启并加载Bind服务的密钥验证功能。 首先 主服务器的主要配置文件加载密钥验证文件,然后进行设置,只允许带有master-slave密钥认证DNS服务器同步数据配置文件:

# vim /etc/named.conf
# systemctl restart named

在这里插入图片描述
下面清空DNS从服务器同步目录中所有的数据配置文件,然后重启bind服务程序,就不能获取数据配置文件了。
在这里插入图片描述
第四步:配置从服务器,使其支持密钥验证。配置DNS从服务器和主服务器的方法基本相同,都要在bind服务程序配置文件目录中创建密钥认证文件,并设置相应权限,然后把该文件做个硬链接到/etc中。

[root@linuxcool named]# cd /var/named/chroot/etc/
[root@linuxcool etc]# vim transfer.key
[root@linuxcool etc]# cat transfer.key 
key "master-slave" {
algorithm hmac-md5;
secret "C5o0TshCxZQTvtz0AdAVuA==";
};
[root@linuxcool etc]# chown root:named transfer.key 
[root@linuxcool etc]# chmod 640 transfer.key 
[root@linuxcool etc]# ln transfer.key /etc/transfer.key
[root@linuxcool etc]#

第五步:开启并加载从服务器的密钥验证功能。注意,密钥名称等参数位置不要太靠前,大约在51行比较合适,否则bind服务程序会因为没有加载完预设参数而报错。
在这里插入图片描述
在这里插入图片描述
第六步:DNS从服务器同步域名区域数据。

[root@linuxcool ~]# cd /var/named/slaves/
[root@linuxcool slaves]# ls
[root@linuxcool slaves]# systemctl restart named
[root@linuxcool slaves]# ls
192.168.153.arpa  linuxprobe.com.zone
[root@linuxcool slaves]# 

第7步:再次进行解析验证。功能正常。请大家注意观察,是由192.168.153.20从服务器进行解析的。
在这里插入图片描述

部署缓存服务器

DNS缓存服务器(Caching DNS Server)是一种不负责域名数据维护的DNS服务器。缓存服务器就是把用户经常用到的域名与IP地址的解析记录保存在主机本地,提升下次解析的效率。一般用于经常访问某些固定站点且对这些网站访问速度有较高的企业内网中,实际应用不广泛。缓存服务器是否成功解析还与指定的上级DNS服务的允许策略有关。
第一步:配置系统的双网卡参数。
在这里插入图片描述

# nmtui
# nmcli con up ens192
# ping 8.8.8.8

在这里插入图片描述在这里插入图片描述
第二步:在bind服务程序的主配置文件中添加缓存转发参数。大约17行处添加一行参数“forwarders {上级DNS服务器地址;};”上级DNS服务器地址指的是获取数据配置文件的服务器。DNS可以考虑使用当地的市区公共DNS服务器的地址。
在这里插入图片描述
第三步:重启DNS服务,验证成果。客户端主机的DNS参数修改为DNS缓存服务器的IP地址192.168.153.10。这样既可让客户端使用本地DNS缓存服务器提供的域名查询解析服务。
在这里插入图片描述

# nslookup (如果解析失败,留意是否是上级DNS服务器选择的问题)

分离解析技术

DNS服务的分离解析功能,即可让位于不同地理范围内的读者通过访问相同的网址,而从不同的服务器获取到相同的数据,以提升访问效率。
在这里插入图片描述
第一步:修改bind服务程序的主配置文件,11行监听端口和19行允许查询主机改为any。
由于配置的DNS分离解析功能与DNS根服务器配置参数有冲突,需要52~55行的根域信息删除。
在这里插入图片描述
在这里插入图片描述
第二步:编辑区域配置文件。把区域配置文件中原数据清空,然后按照以下格式写入参数。
首先用acl参数分别定义两个变量名称(china与american),当下面需要匹配IP地址是只需要写入变量名即可。
view参数的作用是通过判断用户的IP地址是中国的还是美国的,然后分别加载不同的数据配置文件(linuxprobe.com.chian或linuxprobe.com.american)。这样,当相应的IP地址分别写入到数据配置文件后,即可实现DNS的分离解析功能。这样,中国用户访问linuxprobe.com域名时,会按照linuxprobe.com.china数据配置文件内的IP地址找到对应的服务器。
在这里插入图片描述

第三步:建立数据配置文件。通过模板文件创建出两份不同名称的区域数据文件,名称应与上面区域配置文件中的参数对应。

[root@linuxprobe ~]# cd /var/named
[root@linuxprobe named]# cp -a named.localhost linuxprobe.com.china
[root@linuxprobe named]# vim linuxprobe.com.china 
[root@linuxprobe named]# cp -a linuxprobe.com.china linuxprobe.com.america
[root@linuxprobe named]# vim linuxprobe.com.america 
[root@linuxprobe named]# 

在这里插入图片描述

第四步:重启named服务程序,验证结果。可以将客户端主机的IP地址分别设置为122.71.115.88与106.185.25.88,将DNS地址分别设置为服务器主机的两个IP地址。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

照片

在这里插入图片描述

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值