水曜日, 9月 20, 2006

Debian GNU/Linux で Bind (Bind9)

頭のてっぺんからつま先まで独自仕様なdjbdnsがなんとなく嫌でした。
車輪の再発明が嫌だからDNSSecには対応しないとか言ってるくせに、daemontoolsやtcpserverまで書いたりして意味不明です。

というか、実はtinydns、パフォーマンスも悪いらしい。
非公式のパッチをいろいろ当てたりするのも手間ですし。
面倒な上に性能が低いので、これを機会に止めてみました。
それでも、(非公式パッチを当てたとしても、)セキュリティー的にはtinydnsの方が上だとは思っていますが。

で、Bind。
設定ファイルの構成がいいです。
named.confがメインの設定ファイルですが、管理者によるオプションはnamed.conf.optionに記述します。
これでバージョンアップのときにも設定ファイルを使いまわせる(可能性が高い)。
ゾーンの設定もnamed.conf.localに記述します。
こういうところはさすがDebian。
Redhat系にはない、気の利いたやりかたです。

僕はキャッシュサーバーにはpdnsdを使っているので、named.conf.optionに
recursion no;
を追加します。
bindの使うIPを制限するときは、
listen-on {
59.106.42.193;
59.106.42.194;
};
も追加します。

ゾーンの設定はnamed.conf.localに記述します。
zone "infology.info" {
type master;
file "/etc/bind/db.infology.info";
};

もちろん、ゾーンファイルを先に作成しておく必要があります。
-------------------------------------------------------------------
;
; BIND data file for infology.info
;
$TTL 300
@ IN SOA infology.info. hostmaster.infology.info. (
2006082102 ; Serial
300 ; Refresh
300 ; Retry
900 ; Expire
300 ) ; Negative Cache TTL
;
IN NS a.ns.infology.info.
IN NS b.ns.infology.info.
IN MX 0 a.mx.infology.info.
IN MX 0 b.mx.infology.info.
IN A 59.106.42.202
a.ns IN A 59.106.42.193
b.ns IN A 59.106.42.194
a.mx IN A 59.106.42.195
b.mx IN A 59.106.42.196
----------------------------------------------------------------

あとは必要なだけゾーンを追加してやれば、あっさりと動きます。
動かす手間が大違いです。
あと、ゾーンごとにファイルが分かれてるのもいいですね。

0 件のコメント: