千家信息网

bind如何使用rndc

发表于:2024-12-13 作者:千家信息网编辑
千家信息网最后更新 2024年12月13日,这篇文章给大家分享的是有关bind如何使用rndc的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。rndc是BIND安装包提供的一种控制域名服务运行的工具,它可以运行在其他计
千家信息网最后更新 2024年12月13日bind如何使用rndc

这篇文章给大家分享的是有关bind如何使用rndc的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

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

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

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

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

        
  1. # rndc-confgen

  2. # Start of rndc.conf

  3. key "rndckey" {

  4. algorithm hmac-md5;

  5. secret "TKuaJSEo58zohJBfrdF7dQ==";

  6. };

  7. options {

  8. default-key "rndckey";

  9. default-server 127.0.0.1;

  10. default-port 953;

  11. };

  12. # End of rndc.conf

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

  14. # key "rndckey" {

  15. # algorithm hmac-md5;

  16. # secret "TKuaJSEo58zohJBfrdF7dQ==";

  17. # };

  18. #

  19. # controls {

  20. # inet 127.0.0.1 port 953

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

  22. # };

  23. # 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服务器进行管理,但此时双方的密钥要一致才能正常连接。

感谢各位的阅读!关于"bind如何使用rndc"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

0