ご注意下さい
この記事は3年以上前に書かれた記事ですので、内容が古い可能性があります。
たいしたことないと思っていたDNSサーバに苦戦。
bind8からbind9って結構変わっていたのね。
・ndcコマンドがなくなりrndcコマンドというのに変わっていた。
・セキュリティ強化の為かroot起動ではなくnamedユーザ起動になっていた
・こともあろうに、-u named -t /var/named/chroot とchrootして起動しているため/var/named配下にzoneファイルその他を置いてもダメだった(気づくのにどれぐらい時間がかかったことか!)
・その為設定ファイルは/var/named/chroot/var/namedとか/var/named/chroot/etc配下に置かなければならない。
完全にやられましたよ。ちなみにrndc.conf、rndc.keyは/etc配下と/var/named/chroot/etc配下両方にあったほうが使い勝手がいいです。
・rootでrndcコマンドを使用するときには/etcを見るのに対し
・named起動時には/var/named/chroot/etcにもないとダメだから
syslogに
couldn't add command channel 127.0.0.1#953: not found
こんなメッセージや
# rndc localhostと叩いて
rndc: connect failed: connection refused
こんなメッセージが出力される方は以下も参考にしてみて下さい。
それにしても/var/named/chroot/etc/の下に空のnamed.confおいておくなよなー。Fedora不親切。なんとなくnamed動いちゃうジャン。
rndcコマンドを使用するために必要な設定
rndcを使用するためには、named.confファイルにcontrolsステートメントが必要。下記のように記述することにより、ローカルホストから rndcが接続できるようになる。(rndckeyは任意の文字列)
named.confは、すべてが読み込めるファイルであるため、 keyステートメントを別のファイルの中に置いて、includeステートメントを使用して参照するほうが良い。
controls {
inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};
include "/etc/rndc.key";
BINDに付属する以下のコマンド(rndc-confgen)を使用してHMAC-MD5鍵が書かれたkeyステートメントファイルを生成する。(/etc/rndc.keyに生成される)
# rndc-confgen -a -b 512 -k rndckey
(HMAC-MD5鍵の最大長の512bitで作成)
以上で、Bindを起動すれば、同時にrndcがポート953で起動され、ローカルホストでrndcが使用できるようになる。