DNS BIND之dnssec安全实例配置-根节点
上一节我们对dnssec有了一定的认识,下面我们通过实例来说明尝试一下dnssec的配置。关于bind的安装参考:DNS BIND安装测试
环境如下:
递归解析服务器:192.168.13.45
权威服务器根节点:192.168.13.103
权威服务器dev节点:192.168.110.71
递归服务--->根节点(.)--->dev节点(dev.)
一、权威服务器配置
1.修改named.conf配置
key "rndc-key" {algorithm hmac-md5;secret "bRKv62iy/I7RoNNOl0dW2A==";
};controls {inet 127.0.0.1 port 953allow { 127.0.0.1; } keys { "rndc-key"; };
};
options{listen-on port 53{192.168.13.103;};version "vdns3.0";directory "/var/named";pid-file "/var/run/named.pid";session-keyfile "/var/run/session.key";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";rrset-order { order cyclic;}; recursion no;allow-query{any;};allow-query-cache{any;};allow-transfer{none;}; dnssec-enable yes;dnssec-validation yes;dnssec-lookaside auto;/* Path to ISC DLV key */bindkeys-file "/etc/named.iscdlv.key";managed-keys-directory "/var/named/dynamic";
};logging { channel default_debug {file "/var/named/data/named.run";severity dynamic;};channel queries_info { file "/var/named/log/query.log" versions 1 size 100m; severity info; print-category yes; print-severity yes; print-time yes; }; category queries { queries_info; default_debug; }; channel notify_info { file "/var/named/log/notify.log" versions 8 size 128m; severity info; print-category yes; print-severity yes; print-time yes; }; category notify { notify_info; default_debug; };channel dnssec_debug {file "/var/named/log/dnssec.log" versions 1 size 100m;print-time yes;print-category yes;print-severity yes;severity debug 3;}; category dnssec { dnssec_debug; };
}; zone "." in {type hint;file "root.zone";
};
增加开启dnssec选项,关闭递归服务。
2.dnssce配置实例
1)生成签名密钥对
# cd /var/named
首先为区(zone)文件生成密钥签名密钥KSK:
# ~/bind/sbin/dnssec-keygen -f KSK -a RSASHA1 -b 512 -n ZONE . #注意结尾的点别遗漏
将生成文件K.+005+62317.key和K.+005+62317.private
然后生成区签名密钥ZSK:
# ~/bind/sbin/dnssec-keygen -a RSASHA1 -b 512 -n ZONE .
将生成文件K.+005+62541.key和K.+005+62541.private
2)签名
a.签名之前将前面生成的两个公钥添加到区域配置文件末尾(root.zone)
$TTL 86400
@ IN SOA @ root (121691m1m1m1m )
. IN NS root.ns.
root.ns. IN A 192.168.13.103
dev. IN NS ns.dev.
ns.dev. IN A 192.168.110.71$INCLUDE "K.+005+62541.key"
$INCLUDE "K.+005+62317.key"
b.然后执行签名操作
# ~/bind/sbin/dnssec-signzone -o . root.zone
上面的-o选项指定代签名区的名字. 将生成root.zone.signed
c.修改主配置文件
zone "." IN {
type master;
file "root.zone.signed";
allow-transfer {none;};
};
检查配置是否正确:
/home/slim/bind/sbin/named-checkconf -t /home/slim/chroot/ /etc/named.conf
3.启动服务
/home/slim/bind/sbin/named -u slim -t /home/slim/chroot/ -c /etc/named.conf
二、递归解析服务器配置
1.修改named.conf配置
key "rndc-key" {algorithm hmac-md5;secret "D6ShqDKzLPtbHxko0TqgrQ==";
};controls {inet 127.0.0.1 port 953allow { 127.0.0.1; } keys { "rndc-key"; };
};
options{listen-on port 53{192.168.13.45;};version "vdns3.0";directory "/var/named";pid-file "/var/run/named.pid";session-keyfile "/var/run/session.key";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";rrset-order { order cyclic;}; recursion yes;allow-recursion {any;};allow-query{any;};allow-query-cache{any;};allow-transfer{none;}; dnssec-enable yes;dnssec-validation yes;dnssec-lookaside auto;/* Path to ISC DLV key */bindkeys-file "/etc/named.iscdlv.key";managed-keys-directory "/var/named/dynamic";
};logging { channel default_debug {file "/var/named/data/named.run";severity dynamic;};channel queries_info { file "/var/named/log/query.log" versions 1 size 100m; severity info; print-category yes; print-severity yes; print-time yes; }; category queries { queries_info; default_debug; }; channel notify_info { file "/var/named/log/notify.log" versions 8 size 128m; severity info; print-category yes; print-severity yes; print-time yes; }; category notify { notify_info; default_debug; };channel dnssec_debug {file "/var/named/log/dnssec.log" versions 1 size 100m;print-time yes;print-category yes;print-severity yes;severity debug 3;}; category dnssec { dnssec_debug; };
}; zone "." in {type hint;file "root.zone";
};
需开启递归服务(recursion yes;), 在末尾添加信任锚
include "/var/named/trust-anchors.conf";
2.创建“信任锚”文件
# cd /var /named
# vi trust-anchors.conf
trusted-keys {"." 256 3 5 "AwEAAdlhCey/l4T7PQRkBZ2uFixLCpwOdz9bgAMGbNTRApiey9On/qIu uBuEcCvArTYti944ErPPco+fcBawCmYordU=";"." 257 3 5 "AwEAAdQah+KmO0vMSYHtx/TxBzBjqif524nuFow5bp5Zc+pDO9tLrX3Y SrVpuddSx+utRZLVzcI3JeFQtjaBa8OfXH0=";
};
其中的密钥部分是将权威服务器生成的K.+005+62317.key和K.+005+62541.key中密钥部分拷贝过来。
3.根zone(root.zone)
$TTL 86400
@ IN SOA @ root (121691m1m1m1m )
. IN NS root.ns.
root.ns. IN A 192.168.13.103
配置NS指向根(“.”)的服务器地址。
4.启动服务
/home/slim/bind/sbin/named -u slim -t /home/slim/chroot/ -c /etc/named.conf
三、测试
在递归解析服务器测试。
dig @192.168.13.45 +dnssec . NS
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6_6.2 <<>> @192.168.13.45 +dnssec . NS
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 362
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 4096
;; QUESTION SECTION:
;. IN NS;; ANSWER SECTION:
. 85830 IN NS root.ns.
. 85830 IN RRSIG NS 5 0 86400 20150517041910 20150417041910 62541 . udUss1t7llZeYZAbsi8/ITPwVFAy8cB3BpyAyiVLQjRRCtKOSNS7V1H/ jzMdzJ+d62EfdC+hABrX9200Dpnung==;; Query time: 1 msec
;; SERVER: 192.168.13.45#53(192.168.13.45)
;; WHEN: Fri Apr 17 00:25:18 2015
;; MSG SIZE rcvd: 142
其中flags部分有ad,说明DNSSEC启用并通过验证,可以在dig添加+cdflag参数进行调试DNSSEC。
但是此时如果执行
dig @192.168.13.45 +dnssec dev. NS
查询失败或报“信任链受损”。
注意:如果要配置从服务器,只需要在options中添加添加开启dnssec选项,并删除原有的根zone,重启服务。
DNS BIND之dnssec安全实例配置-根节点相关推荐
- DNS BIND之dnssec安全介绍
Domain Name System Security Extensions (DNSSEC)DNS安全扩展,是由IETF提供的一系列DNS安全认证的机制(可参考RFC2535).它提供了一种来源鉴定 ...
- CentOS7.4下DNS服务器软件BIND安装及相关的配置(一)
(一)DNS简介: DNS,全称Domain Name System,即域名解析系统.域名是通过DNS来实现的,每个域名代表一个IP,DNS就是用来在ip地址与域名之间进行转换的服务. DNS帮助用户 ...
- 使用bind+dlz+mysql实现动态配置DNS
DNS之bind服务器配置 CentOS7编译环境安装 yum group install "Development Tools" yum install openssl* yum ...
- dns bind配置教程
实验环境 三台centos7虚拟机,一台ip为192.168.52.130,一台为192.168.52.131,最后一台为192.168.52.132 安装bind 使用yum -y insall b ...
- DNSSEC 原理、配置与布署简介
本文转载自:http://netsec.ccert.edu.cn/duanhx/archives/1479 作者:段海新,清华大学信息网络工程研究中心 ------------------------ ...
- MySQL 5.5.35 单机多实例配置详解
一.前言 二.概述 三.环境准备 四.安装MySQL 5.5.35 五.新建支持多实例的配置文件(我这里配置的是四个实例) 六.初始化多实例数据库 七.提供管理脚本 mysqld_multi.serv ...
- mysql 5.5.35 单机多实例配置详解_MySQL 5.5.35 单机多实例配置详解
一.前言 二.概述 三.环境准备 四.安装MySQL 5.5.35 五.新建支持多实例的配置文件(我这里配置的是四个实例) 六.初始化多实例数据库 七.提供管理脚本 mysqld_multi.serv ...
- 互联网域名解析系统DNS的工作原理及相关服务配置
DNS: Domain Name Service DNS服务是一种分布式数据库,它提供规范机器名到数字IP地址的映射及数字IP到规范机器名. DNS相关定义 ...
- DNS智能解析的搭建与配置
分类: LINUX 原文地址:DNS智能解析的搭建与配置 作者:十年梦生 9月份整整忙了一个月,都抽不出时间来写篇文章,这几天趁着10.1终于有时间来写些东西了,将9月份所做的一些东西来做下总结. 今 ...
最新文章
- ASP.NET 实现Base64文件流下载PDF
- Gartner 发布 2022 年汽车行业五大技术趋势
- 支持ie8的时分秒的html,兼容ie8的漂亮jQuery计时器插件
- 组件和高阶组件区别_为什么要对高阶组件使用代码拆分
- Spring3 MVC请求参数获取的几种场景
- 怎么让某段css代码只在Chrome 火狐 edge 浏览器生效
- jquery新版本旧版本之间的坑
- 运筹学——线性规划及单纯形法求解
- 【错误记录】Google Play 上架报错 ( 此版本不符合 Google Play 关于提供 64 位版本应用的要求。| 如果提供 x86 架构动态库则必须提供 x86_64 架构的动态库 )
- 【计算机组成】内存和芯片存储容量问题
- 怎么把SEO和SEM配合起来
- DDL(数据定义语言)讲解
- 视觉学习笔记6——YOLOv5(v6.2)部署与代码理解
- Android修行手册 - VideoView全解-下
- 【推荐系统学习】推荐系统架构
- 人类为什么不把永生技术放在第一位?
- 底层程序员4年的逆袭之旅:穷屌丝-->小老板
- Auto CAD二次开发:基于VBA语言的画圆软件开发
- 传奇程序员John Carmack 访谈实录 (zz.is2120)
- DirectSound---简易Wav播放器
热门文章
- 看电脑装的是多少位的系统(暂存),电脑开机密码
- layui input框列表显示默认历史搜索记录
- LTE学习笔记--PHY--PDSCH
- android 7.0安装包,安卓7.0安装包,安卓7.0通用升级安装包免费预约 v7.0-手游汇
- 论文中缩写w.r.t./i.e./et al./e.g./cf./etc的含义
- 苹果手机计算机显示过程,苹果6手机刷机过程提示-1代码错误
- TypeError: Cannot read property ‘xxx‘ of null(vuex数据)
- TypeError: Cannot read property ‘$createElement‘ of undefined错误
- C# 获取当前系统时间 与某一时间相减
- VERY DEEP CONVOLUTIONAL NETWORKS FOR LARGE-SCALE IMAGE RECOGNITION-2014