14.2.5 使用rndc

14.2.5  使用rndc

rndcBIND安装包提供的一种控制域名服务运行的工具,它可以运行在其他计算机上,通过网络与DNS服务器进行连接,然后根据管理员的指令对named进程进行远程控制,此时,管理员不需要DNS服务器的根用户权限。

使用rndc可以在不停止DNS服务器工作的情况进行数据的更新,使修改后的配置文件生效。在实际情况下,DNS服务器是非常繁忙的,任何短时间的停顿都会给用户的使用带来影响。因此,使用rndc工具可以使DNS服务器更好地为用户提供服务。

rndcDNS服务器实行连接时,需要通过数字证书进行认证,而不是传统的用户名/密码方式。在当前版本下,rndcnamed都只支持HMAC-MD5认证算法,在通信两端使用共享密钥。rndc在连接通道中发送命令时,必须使用经过服务器认可的密钥加密。为了生成双方都认可的密钥,可以使用rndc-confgen命令产生密钥和相应的配置,再把这些配置分别放入named.confrndc的配置文件rndc.conf中,具体操作步骤如下所示。

1)执行rndc-confgen命令,得到密钥和相应的配置。

 

# rndc-confgen

# Start of rndc.conf

key "rndckey" {

  algorithm hmac-md5;

  secret "TKuaJSEo58zohJBfrdF7dQ==";

};

 

options {

  default-key "rndckey";

  default-server 127.0.0.1;

  default-port 953;

};

# End of rndc.conf

 

# Use with the following in named.conf, adjusting the allow list as needed:

# key "rndckey" {

#       algorithm hmac-md5;

#       secret "TKuaJSEo58zohJBfrdF7dQ==";

# };

#

# controls {

#       inet 127.0.0.1 port 953

#              allow { 127.0.0.1; } keys { "rndckey"; };

# };

# End of named.conf

 

2)在/etc目录下创建rndc.conf文件,根据提示输入上述输出中不带注释的内容。

 

# vi  /etc/rndc.conf

key "rndckey" {

  algorithm hmac-md5;

  secret "TKuaJSEo58zohJBfrdF7dQ==";

};

 

options {

  default-key "rndckey";

  default-server 127.0.0.1;

  default-port 953;

};

 

3)根据提示,把下列内容放入原有的/etc/named.conf文件后面。

 

 key "rndckey" {

       algorithm hmac-md5;

       secret "TKuaJSEo58zohJBfrdF7dQ==";

 };

 

 controls {

       inet 127.0.0.1 port 953

              allow { 127.0.0.1; } keys { "rndckey"; };

 };

 

4)重启named进程后,就可以使用rndc工具对named进行控制了。例如,下面的命令可以使named重新装载配置文件和区文件。

 

# rndc reload

server reload successful

#

 

此外,所有rndc支持的命令及帮助信息可以通过不带参数的rndc命令显示。

 

[root@localhost named]# rndc

Usage: rndc [-c config] [-s server] [-p port]

        [-k key-file ] [-y key] [-V] command

 

command is one of the following:

  reload       Reload configuration file and zones.

  reload zone [class [view]]

  ...

  status       Display status of the server.

  recursing    Dump the queries that are currently recursing

  (named.recursing)

  *restart     Restart the server.

 

* == not yet implemented

Version: 9.3.3rc2

 

可以看到,rndc提供了非常丰富的命令,可以让管理员在不重启named进程的情况下,完成大部分的DNS服务器管理工作。

%说明:rndc命令后面可以跟“-s”和“-p”选项连接到远程DNS服务器,以便对远程DNS服务器进行管理,但此时双方的密钥要一致才能正常连接。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值