rndc.conf て 何? これが 無くても 動いてるが ?? rndc.conf.html の 抜粋
The key statement begins with an identifying string, the name of the key. The statement has two clauses. algorithm identifies the encryption algorithm for rndc to use; currently only HMAC-MD5 is supported. This is followed by a secret clause which contains the base-64 encoding of the algorithm's encryption key. The base-64 string is enclosed in double quotes.EXAMPLE options { default-server localhost; default-key samplekey; }; server localhost { key samplekey; }; key samplekey { algorithm hmac-md5; secret "c3Ryb25nIGVub3VnaCBmb3IgYSBtYW4gYnV0IG1hZGUgZm9yIGEgd29tYW4K"; };
現状 rndc.conf が 無くても named (bind) の動作は 可能である 何処かに sample が ころがっていないだろうか?
# find / -name rndc.conf /usr/local/src/bind-9.2.3/bin/rndc/rndc.conf /usr/local/src/bind-9.2.3/bin/tests/system/common/rndc.conf
どんな もの?
# cat /usr/local/src/bind-9.2.3/bin/rndc/rndc.conf /* * Copyright (C) 2000, 2001 Internet Software Consortium. * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above * copyright notice and this permission notice appear in all copies. * * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM * DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL * INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ /* $Id: rndc.conf,v 1.7 2001/01/09 21:40:45 bwelling Exp $ */ /* * Sample rndc configuration file. */ options { default-server localhost; default-key "key"; }; server localhost { key "key"; }; key "key" { algorithm hmac-md5; secret "c3Ryb25nIGVub3VnaCBmb3IgYSBtYW4gYnV0IG1hZGUgZm9yIGEgd29tYW4K"; };
こちらはどんな もの?
# cat /usr/local/src/bind-9.2.3/bin/tests/system/common/rndc.conf /* * Copyright (C) 2000, 2001 Internet Software Consortium. * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above * copyright notice and this permission notice appear in all copies. * * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM * DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL * INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ /* $Id: rndc.conf,v 1.2 2001/01/09 21:42:29 bwelling Exp $ */ options { default-key "rndc_key"; }; key rndc_key { algorithm hmac-md5; secret "1234abcd8765"; };
簡単な説明は
rndc-confgen Name rndc-confgen -- rndc key generation tool Synopsis rndc-confgen [-a] [-b keysize] [-c keyfile] [-h] [-k keyname] [-p port] [-r randomfile] [-s address] [-t chrootdir] [-u user]
この様にして 作成を多々行うが
# which rndc-confgen /usr/local/sbin/rndc-confgen # /usr/local/sbin/rndc-confgen -a -b 512
では もうすこし 丁寧に 作成してみよう
# /usr/local/sbin/rndc-confgen -b 512 -r /dev/random -k samplekey > rndc.conf # ls -l rndc.conf -rw-r--r-- 1 root root 611 Mar 29 23:16 rndc.conf
さすれば
# cat rndc.conf # Start of rndc.conf key "samplekey" { algorithm hmac-md5; secret "kxvSo3N3R48osXsOl0U950ckbuuZTCSWiM3oF8257W73lV+JMToCTPQqw+IcelLtuDuewRU2aN3v2qOiA=="; }; options { default-key "samplekey"; 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 n: # key "samplekey" { # algorithm hmac-md5; # secret "kxvSo3N3R48osXsOl0U950ckbuuZTCSWiM3oF8257W73lV+JMToCTPQqw+IcelLtuDuewRU2aN3v2qOiA=="; # }; # # controls { # inet 127.0.0.1 port 953 # allow { 127.0.0.1; } keys { "samplekey"; }; # }; # End of named.conf
オプション -a を つけると
# /usr/local/sbin/rndc-confgen -a -b 512 -r /dev/random -k samplekey > rndc.conf # ls -l rndc* -rw-r--r-- 1 root root 0 Mar 29 23:28 rndc.conf -rw------- 1 root root 142 Mar 29 23:28 rndc.key
ファイルに するのであれば -a でなくて ということか
# cat -v rndc.key key "samplekey" { algorithm hmac-md5; secret "rbltTHc/s8M/qQSFc6MKDwj3B+aawmc+eeLt1da42N5xXa359n/pu5vxjhz\ OV2yOOc+VJyGl24XqPHB67TvShQ=="; };
和猫には 無理だが 参考迄に
file:///usr/local/src/bind-9.2.3/bin/rndc/rndc-confgen.html rndc-confgen Name rndc-confgen -- rndc key generation tool Synopsis rndc-confgen [-a] [-b keysize] [-c keyfile] [-h] [-k keyname] [-p port] [-r randomfile] [-s address] [-t chrootdir] [-u user] DESCRIPTION rndc-confgen generates configuration files for rndc. It can be used as a convenient alternative to writing the rndc.conf file and the corresponding controls and key statements in named.conf by hand. Alternatively, it can be run with the -a option to set up a rndc.key file and avoid the need for a rndc.conf file and a controls statement altogether. OPTIONS -a Do automatic rndc configuration. This creates a file rndc.key in /etc (or whatever sysconfdir was specified as when BIND was built) that is read by both rndc and named on startup. The rndc.key file defines a default command channel and authentication key allowing rndc to communicate with named with no further configuration. Running rndc-confgen -a allows BIND 9 and rndc to be used as drop-in replacements for BIND 8 and ndc, with no changes to the existing BIND 8 named.conf file. -b keysize Specifies the size of the authentication key in bits. Must be between 1 and 512 bits; the default is 128. -c keyfile Used with the -a option to specify an alternate location for rndc.key. -h Prints a short summary of the options and arguments to rndc-confgen. -k keyname Specifies the key name of the rndc authentication key. This must be a valid domain name. The default is rndc-key. -p port Specifies the command channel port where named listens for connections from rndc. The default is 953. -r randomfile Specifies a source of random data for generating the authorization. If the operating system does not provide a /dev/random or equivalent device, the default source of randomness is keyboard input. randomdev specifies the name of a character device or file containing random data to be used instead of the default. The special value keyboard indicates that keyboard input should be used. -s address Specifies the IP address where named listens for command channel connections from rndc. The default is the loopback address 127.0.0.1. -t chrootdir Used with the -a option to specify a directory where named will run chrooted. An additional copy of the rndc.key will be written relative to this directory so that it will be found by the chrooted named. -u user Used with the -a option to set the owner of the rndc.key file generated. If -t is also specified only the file in the chroot area has its owner changed.
少し 操作してみよう まず /etc に おいて rndc.conf の 無い事を確認
# pwd /etc # ls -l | grep rndc #
適当なところで
# pwd /root # /usr/local/sbin/rndc-confgen -a -b 512 -r /dev/random -k samplekey > rndc.conf # ls -l rndc.conf -rw-r--r-- 1 root root 0 Mar 30 21:46 rndc.conf
/etc に rndc.key が 現れる
# pwd /etc # ls -l | grep rndc* -rw------- 1 root root 142 Mar 30 21:46 rndc.key # cat rndc.key key "samplekey" { algorithm hmac-md5; secret "8UA5nlL8kVEkVp0gFPtmjckbOkISHWzs0EKOeAsvsoCNj8cl4e9QIc\ 8pt130XKs0rmUMnMcxHwduqzKhohYRYA=="; };
これが オプション -a の 意味でしょう
にゃんたろう 拝!
2006年 3月29日 (水) 23:49:33 JST 作成