DNSサーバを立てる
FC2ドメインで汎用JPドメイン「5-55.jp」を取ったばっかりにDNSサーバを立てるはめになったお話はここ(→自宅サーバへの道その4 - satake7’s memo)。とりあえず、文句は言わずやることをやる。
bind9のインストール
これは楽チン。
$ sudo apt-get install bind9 The following packages were automatically installed and are no longer required: rake rdoc libredcloth-ruby1.8 liberb-ruby libsqlite3-ruby1.8 Use 'apt-get autoremove' to remove them. 提案パッケージ: bind9-doc 以下のパッケージが新たにインストールされます: bind9 アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 1 個。 取得:1 http://jp.archive.ubuntu.com gutsy-updates/main bind9 1:9.4.1-P1-3ubuntu1 [255kB] bind9 (1:9.4.1-P1-3ubuntu1) を設定しています ... Adding group `bind' (GID 113) ... Done. Adding system user `bind' (UID 105) ... Adding new user `bind' (UID 105) with group `bind' ... Not creating home directory `/var/cache/bind'. wrote key file "/etc/bind/rndc.key" * Starting domain name service... bind ...done.
設定ファイル
設定ファイルは、/etc/bind にできるようだ。
$ ls /etc/bind db.0 db.255 db.local named.conf named.conf.options zones.rfc1918 db.127 db.empty db.root named.conf.local rndc.key
rndcの認証鍵の作成
bindのデーモンを制御するrndcというやつにあげる認証用の鍵を作っておきます。ググルと『rndc-confgen -r /dev/random』でやってねというページばっかりですが、Ubuntuではこれだと全然レスポンスが戻ってきません。『/dev/random』にキーにするためのノイズが足りないかららしいです。キーの精度が落ちるそうですが、『/dev/urandom』からキーをとるようにすると、すぐ戻ってきます。あと、sudoでやると、rndc.confを作るときにパーミッションがねぇと怒られたので、rootでやりました。
$ sudo su - # cd /etc/bind # rndc-confgen -r /dev/urandom > rndc.conf # chown bind:bind rndc.conf # chmod 640 rndc.conf # nano rndc.conf
# Use with the following in named.conf, adjusting the allow list as needed: # key "rndc-key" { # algorithm hmac-md5; # secret "************************"; # }; # # controls { # inet 127.0.0.1 port 953 # allow { 127.0.0.1; } keys { "rndc-key"; }; # }; # End of named.conf
この『rndc.conf』の内容はあとで先頭の'#'を外して、『named.conf』にコピーして使います。
この項、続く。