您的位置 首页 主动

Linux体系下的动态DNS服务装备办法详解 (1)

在网络管理中,对于DNS服务的管理是一项基础性的工作。随着用户规模的扩大,频繁地手工修改DNS的区域数据库文件不是一件轻松的工作。关于动态DNS(D

在网络办理中,关于DNS服务的办理是一项基础性的作业。跟着用户规划的扩展,频频地手艺修正DNS的区域数据库文件不是一件轻松的作业。关于动态DNS(DDNS)的研讨逐步引起了人们的重视,不同的渠道都推出了自己的解决计划。本文将具体介绍Linux环境下DDNS的解决计划,即由Internet Software Consortium(ISC)开发的BIND-DNS和DHCP(Dynamic Host Configure Protocol,动态主机装备协议)协同作业,从而一起完成DDNS的办法。

在Linux下完成动态DNS不只需求Bind 8以上的DNS软件,还要有DHCP Server v3.0以上版别,因为只要3.0以上的版别才彻底完成了对DDNS的支撑。因而,本文的完成环境选用Slackware Linux 9.0作为DDNS服务器,其上一起运转DNS和DHCP服务,其间DNS Server选用Bind 9.2.2,DHCP Server选用DHCP Server v3.0pl2。

下面具体介绍Linux环境下安全、动态DNS的完成办法。

创立密钥

要完成DNS的动态更新,首先要考虑的是怎样确保安全地完成DDNS。由ISC给出的办法是创立进行动态更新的密钥,在进行更新时经过该密钥加以验证。为了完成这一功用,需求以root身份运转以下指令:

root@slack9:/etc# dnssec-keygen -a HMAC-MD5 -b 128 -n USER myddns

Kmyddns.+157+37662

上述dnssec-keygen指令的功用便是生成更新密钥,其间参数-a HMAC-MD5是指密钥的生成算法选用HMAC-MD5;参数-b 128是指密钥的位数为128位;参数-n USER myddns是指密钥的用户为myddns。

该指令生成的一对密钥文件如下:

-rw——- 1 root root 48 Jan 14 18:26 Kmyddns.+157+37662.key

-rw——- 1 root root 81 Jan 14 18:26 Kmyddns.+157+37662.private

能够检查刚生成的密钥文件内容:

root@slack9:/etc# cat Kmyddns.+157+37662.key

myddns.INKEY02157 4gEF1Mkmn5hrlwYUeGJV3g==

root@slack9:/etc# cat Kmyddns.+157+37662.private

Private-key-format: v1.2

Algorithm: 157 (HMAC_MD5)

Key: 4gEF1Mkmn5hrlwYUeGJV3g==

仔细阅读该密钥文件就会发现,这两个文件中包括的密钥是相同的,该密钥便是DHCP对DNS进行安全动态更新时的凭证。后边需求将该密钥别离添加到DNS和DHCP的装备文件中。

修正DNS的主装备文件

密钥生成后就要开端对/etc/named.conf文件进行修正修正,首要意图是将密钥信息添加到DNS的主装备文件中。本文给出修正后的/etc/named.conf的一个实例:

options {

directory /var/named;

file://指定区域数据库文件的寄存目录

};

zone . IN {

type hint;

file caching-example/named.ca;

};

zone localhost IN {

type master;

file caching-example/localhost.zone;

allow-update { none; };

};

zone 0.0.127.in-addr.arpa IN {

type master;

file caching-example/named.local;

allow-update { none; };

};

key myddns {

algorithm HMAC-MD5.SIG-ALG.REG.INT;

file://指明生成密钥的算法

secret 4gEF1Mkmn5hrlwYUeGJV3g==;

file://指明密钥

};

zone tcbuu.cn IN {

type master;

file tcbuu.cn;

file://正向区域文件名tcbuu.cn,后文会用到该文件

allow-update { key myddns; };

file://指明选用key myddns作为密钥的用户能够动态更新该区域“tcbuu.cn”

};

zone 1.22.10.in-addr.arpa IN {

type master;

file tcbuu.cn.arpa;//反向区域文件名tcbuu.cn

allow-update { key myddns; };

file://指明选用key myddns作为密钥的用户能够动态更新该区域“1.22.10.in-addr.arpa”

};

在/etc/named.conf中能够界说多个区域,只要在答应动态更新的区域中添加allow-update { key myddns; }指令,即可完成动态更新,而且只要具有key myddns实体(在本文的完成中该实体便是具有相同密钥的DHCP服务器)才干完成对该区域进行安全地动态更新。比较本来只限制IP地址的办法,该办法要安全得多。

至此完成对DNS服务器的装备,能够履行#named运转DNS服务。

修正DHCP的装备文件

DHCP的首要功用是为DHCP客户动态地分配IP地址、掩码、网关等内容。正是因为DHCP的动态特性,在完成DDNS时,DHCP成为首选计划。

给出修正后的/etc/dhcpd.conf的一个实例:

# dhcpd.conf

# Sample configuration file for ISC dhcpd

# option definitions common to all supported networks…

option domain-name tcbuu.cn;

option domain-name-servers 10.22.1.123;

default-lease-time 600;

max-lease-time 800;

ddns-update-style interim;

file://指明完成动态DNS的办法为interim

subnet 10.22.1.0 netmask 255.255.255.0 {

range 10.22.1.60 10.22.1.69;//地址池

option broadcast-address 10.22.1.255;

option routers 10.22.1.100;

}

key myddns {//指明密钥生成的算法及密钥

algorithm HMAC-MD5.SIG-ALG.REG.INT;

secret 4gEF1Mkmn5hrlwYUeGJV3g==;

}

zone tcbuu.cn. {

primary 10.22.1.123;

key myddns;//指明更新时采纳的密钥key myddns

}

zone 1.22.10.in-addr.arpa. {

primary 10.22.1.123;

key myddns;//指明更新时采纳的密钥key myddns

}

阐明:

1.ddns-update-style interim

由ISC开发的DHCP服务器现在首要支撑interim办法来进行DNS的动态更新,别的一种称为ad-hoc的办法基本上现已不再选用。因而,实际上,interim办法是现在Linux环境下经过DHCP完成安全DDNS更新的专一办法。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ziliao/zhudong/298295.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部