またゾーン管理スクリプトの委任関係のチェックが甘いと、不正な(当然lameな)ゾーンを突っ込まれる可能性もある。これが直ぐDNSのポイズニングにつながるかどうかは、正しく設定されているかによる。
// typo直しましたacl local {192.168.0.0/16;// このサーバを信頼してくれてる人。お客様は神様です};options {/* 全略 */};view "cache" {match-recursive-only yes;
// 再帰はキャッシュを通す
// これ設定しないと無限ループするよ!!!
match-clients {127.0.0.1/8; local;};// 内向きのみrecursion yes;include "local.conf";// RFC規定のhintやローカル関連ゾーンのリストinclude "admin.conf";// DNSサーバ管理者がメンテしているmaster/slaveゾーンのリスト// これ信用出来ないならこの鯖意味ないよね// ここに少しでも不安があるゾーンをincludeしちゃダメ};// BINDは+norecurseで探索するのでクエリはこっちに来ます// forwardするなら同居する意味ないよねview "userzones" {match-clients {any;};// 自分も含めることrecursion no;include "local.conf";include "admin.conf";include "user.conf";// ユーザーから要求されたmaster/slaveゾーンのリスト// 管理者がいくらチェックしてても一時的にLAMEってる可能性はある// ここでattach-cacheはダメ!絶対!// 今のところattach-cacheはただの参照で階層化してるわけじゃないんです! BIND9.9doc};
DNSキャッシュ(リゾルバ)と、DNS管理人がメンテしてるゾーン(絶対に信頼出来る)と、ユーザーのゾーン(いくらか嘘が混じっているかも)を区別してください。ってことです。


