DNSSECの導入 その3

このサイトをDNSSECに対応させるべく合間をみて作業を進めています。
自宅内部で使用するキャッシュDNSサーバに関しては、BINDの最新バージョン(9.7以降)でDNSSECの設定を有効にすればいいので、それほど難しいことはありませんでした。
DNSSECの説明については有識者の方々のサイトで紹介されていますので、わざわざ私のサイトでの詳細な説明は割愛させていただきますが、どのような設定を行ったかは自分の備忘録も兼ねて、いつかご紹介させていただければと考えております。

キャッシュDNSサーバを構築して、digコマンドでDNSSECの検証も確認できたので、次は権威DNSの構築。
DNSSECについて書籍以外にも、各方面で紹介されているDNSSECの情報を色々と調査していたところ、hidden master構成というのを発見。
セキュリティを考慮し、マスターサーバではゾーンや鍵、署名を管理をしDNS問い合わせは行わない。DNS問い合わせはスレーブサーバに任せるというもの。これを知ったときはまさに目から鱗!なるほど!と思いました。
知ったのは以下のURLです。
参照:https://www.nic.ad.jp/ja/materials/iw/2012/proceedings/t9/t9-Yamaguchi.pdf

セキュリティを考慮したらこのhidden master構成はやらない手はないと思い、この構成でDNSSECに対応した権威DNSサーバを構築することに。
しかし、マスターサーバ以外にスレーブサーバは最低でも2台は必要。ちょっと手間がかかるなと思いつつ、ものには順序もあるのでいきなりDNSSECに対応させたDNSサーバを構築するのではなく、従来通りの権威DNSサーバを構築しました。

 

DNS-hidden mastaer

 

マスターサーバは自宅に構築。スレーブサーバ2台のうち、1台はさくらのVPSで構築しもう1台はさくらインターネットさんのDNSサーバを使わせてもらう形にしました。
digコマンドで検証を行い、マスターサーバでは外部から一切の問い合わせを受け付けない、ドメインの問い合わせはスレーブサーバで行い、再帰問い合わせも受け付けないという動作を確認できました。とりあえず大丈夫かなという状況です。
マスターサーバからスレーブサーバへのゾーン転送に関しては、自分でさくらのVPSで構築したスレーブサーバには転送できていて名前解決もできている状況でしたが、なぜかさくらインターネットさんで借りているDNSサーバでは名前解決できないという状況に。
さくらインターネットさんのサポートにも相談させていただき解決。
ゾーン転送はマスターからスレーブへの方向だけでなく、スレーブからマスターに対してもゾーンの取得要求があるので、マスター側でスレーブからの問い合わせ許可をしておく必要があるという初歩的なものでした。
私はマスターサーバで外部からのクエリーを一切受け付けないようにするため、マスターサーバのallow-queryをローカルだけしか許可していませんでした。
とはいってもなぜさくらのVPSで構築したスレーブサーバはゾーン転送されて、ゾーンファイルも作成されていたのかちょっと腑に落ちませんが・・・・。
自分では仕組みを理解しているつもりでしたが、やはり自分の手でガリガリ操作してはじめて発見することも多いです。すごく勉強になってます。