深入浅出DNS系列(四)-内部根服务器架设实例与详解

    xiaoxiao2021-03-25  78

    申明:文档中使用的james.cn、kobe.cn域名,只在内部测试环境中使用,如有侵权,请联系,将在第一时间更改 参考文档:《DNS与BIND》、《RFC1034》、《RFC1035》 软件环境安装,请参考我编写的实例文档《BIND编译调试环境搭建》

    1 架构图

    注明:架构图中没有防火墙等内外网隔离设备

    2 根服务器配置

    2.1 named.conf配置

    检查named.conf配置文件,有错误会提示,如图:

    2.2 区域数据文件

    检查区域数据文件

    2.3 启动BIND 并测试

    [root@bindroot sbin]# ./named –g &

    2.4 DNSSEC支持

    2.4.1 KSK与ZSK的生成

    参考第5章 ./dnssec-keygen -f KSK -a RSASHA1 -b 512 -n ZONE . K.+005+64849.key K.+005+64849.private ./dnssec-keygen -a RSASHA1 -b 512 -n ZONE . K.+005+61560.key K.+005+61560.private

    2.4.2 上传cn域的DS记录

    scp root@192.168.198.181:/usr/local/sbin/bind/sbin/dsset-cn. /usr/local/sbin/bind/sbin/

    2.4.3 添加cn域的DS记录,并生成签名记录文件

    修改db.root,在末尾添加 $INCLUDE "K.+005+64849.key" $INCLUDE "K.+005+61560.key" $INCLUDE "dsset-cn." 生成前面的cn域文件 ./dnssec-signzone -o . ../zone/db.root 在../zone目录,生成db.root.signed 在当前目录,生成dsset-.文件

    2.4.4 修改named.conf配置文件

    2.4.5 创建信任锚文件(trust-anchors),以供递归解析器使用

    vi trust-anchors.root 如上图:内容是从根域KSK、ZSK的key文件拷贝而来,实际上就是根域公钥信息

    3 CN服务器配置

    3.1 named.conf配置

    如上图,注意根域的配置type为hint,表示此为根服务的索引文件,在运行时会自动与文件中定义的根服务器联系

    3.2 root区域数据文件

    和根服务器保持一样,直接拷贝过来

    3.3 cn区域数据文件

    3.4 启动BIND 并测试

    [root@bindroot sbin]# ./named –g &

    3.5 DNSSEC支持

    3.5.1 KSK与ZSK的生成

    参考第5章 ./dnssec-keygen -f KSK -a RSASHA1 -b 512 -n ZONE cn. Kcn.+005+20524.key Kcn.+005+20524.private ./dnssec-keygen -a RSASHA1 -b 512 -n ZONE cn. Kcn.+005+49872.key Kcn.+005+49872.private

    3.5.2 上传kobe.cn与james.cn的DS记录

    scp root@192.168.198.182:/usr/local/sbin/bind/sbin/dsset-james.cn. /usr/local/sbin/bind/sbin/ scp root@192.168.198.193:/usr/local/sbin/bind/sbin/dsset-kobe.cn. /usr/local/sbin/bind/sbin/

    3.5.3 添加kobe.cn与james.cn的DS记录,并生成签名记录文件

    修改db.cn,在末尾添加 $INCLUDE "Kcn.+005+20524.key" $INCLUDE "Kcn.+005+49872.key" $INCLUDE "dsset-james.cn." $INCLUDE "dsset-kobe.cn." 生成前面的cn域文件 ./dnssec-signzone -o cn. ../zone/db.cn 在../zone目录,生成db.cn.signed 在当前目录,生成dsset-cn.文件

    3.5.4 修改named.conf配置文件

    4 James.cn域服务器配置

    4.1 named.conf配置

    4.2 root区域数据文件

    4.3 james.cn区域数据文件

    4.4 启动BIND 并测试

    [root@bindroot sbin]# ./named –g &

    4.5 DNSSEC支持

    参考5章kobe.cn进行操作 ./dnssec-keygen -f KSK -a RSASHA1 -b 512 -n ZONE james.cn. Kjames.cn.+005+09337.key Kjames.cn.+005+09337.private ./dnssec-keygen -a RSASHA1 -b 512 -n ZONE james.cn. Kjames.cn.+005+24462.key Kjames.cn.+005+24462.private

    5 kobe.cn域服务器配置

    5.1 named.conf配置

    5.2 root区域数据文件

    5.3 kobe.cn区域数据文件

    5.4 启动BIND 并测试

    [root@bindroot sbin]# ./named –g &

    5.5 支持DNSSEC

    5.5.1 Key生成

    cd /usr/local/sbin/bind/sbin ./dnssec-keygen -f KSK -a RSASHA1 -b 512 -n ZONE kobe.cn. 产生2个文件,分别是: Kkobe.cn.+005+52753.key Kkobe.cn.+005+52753.private ./dnssec-keygen -a RSASHA1 -b 512 -n ZONE kobe.cn. 产生2个文件,分别是: Kkobe.cn.+005+38901.key Kkobe.cn.+005+38901.private vi ../zone/db.kobe.cn 在文件末尾,增加以下2行 $INCLUDE "Kkobe.cn.+005+52753.key" $INCLUDE "Kkobe.cn.+005+38901.key" ./dnssec-signzone -o kobe.cn. ../zone/db.kobe.cn 在../zone目录,生成db.kobe.cn.signed文件 在当前目录,生成dsset-kobe.cn.文件 vi ../zone/db.kobe.cn 在末尾删除2行 $INCLUDE "Kkobe.cn.+005+52753.key" $INCLUDE "Kkobe.cn.+005+38901.key" vi ../etc/named.conf 修改如下图:

    6 缓存(转发)服务器配置

    缓存DNS服务器,不需要配置自己的区域数据文件

    6.1 named.conf配置

    6.2 根据区域数据文件

    6.3 启动BIND 并测试

    [root@bindroot sbin]# ./named –g & 如下图测试效果图所示,缓存服务器192.168.198.138并未配置cn域的相关信息,通过缓存服务器请求cn的SOA记录,并获取正确的解析,证明缓存服务器通过根服务器请求解答并运作正常

    6.4 DNSSEC支持

    6.4.1 配置信任锚文件信息

    scp root@192.168.198.180:/usr/local/sbin/bind/sbin/trust-anchors.root /usr/local/sbin/bind/etc/ vi named.conf 在末尾添加 include "/usr/local/sbin/bind/etc/trust-anchors.root";

    7 测试效果

    7.1 配置客户端

    配置redisclient.james.cn主机,如下:

    7.2 测试

    测试1 测试2

    7.3 DNSSEC测试

    按文档的描述进行操作,启动所有named服务 注意:不带dnssec的请求,与原来一致
    转载请注明原文地址: https://ju.6miu.com/read-16298.html

    最新回复(0)