BINDは用途が広く、マスターターバ・スレーブサーバのいずれでも動作します。またローカルなDNSサーバとしても機能することができます。
■パッケージのインストール
# yum -y install bind
# yum -y install bind-chroot
# yum -y install caching-nameserver
bindパッケージは、DNSサーバを構築するために必要です。
サービス名はnamed。インストールした時点では、自動起動されない設定になっています。
bind-chrootパッケージは、BINDが参照するファイルシステムのルートが、/var/named/chroot にあるように見せることで、悪意のある第三者に攻撃されても、システムのファイルに影響が及ばないようにします。
chaching-nameserverパッケージは、自ホスト内で発生する様々な名前参照の問い合わせ結果を、DNSサーバのシステム内にキャッシュするためのものです。
■bind-chroot
bind-chrootパッケージをインストールすることで、nameedが使用するファイル全てが、/var/named/chroot以下にコピーされます。これまで標準的に存在していたファイル(ex. /etc/named.conf)は、/var/named/chroot以下のファイルのシンボリックリンクとして残されます。
例)初期設定ファイル : /etc/named.conf ⇒ /var/named/chroot/etc/named.conf
■サービスの起動
# /etc/init.d/named start
もしくは
# service named start
デフォルトでは自動起動される設定になっていません。
# chkconfig --list named
named 0:off 1:off 2:off 3:off 4:off 5:off 6:off
自動起動の設定
# chkconfig --level 345 named on
■初期設定ファイル
bind-chrootをインストールしたものとして話を進めます。
BINDは、/etc/named/chroot/etc/named.confを初期設定ファイルとして使用します。BINDにおいて、ステートメントとして定義されているのは12個あります。logging, options, zone, acl, key, trusted-keys, server, controls, include, masters, lwres, viewです。そのうち、重要となるのは、optionsとzoneです。
named.conf
# cat named.conf // // named.conf // // Provided by Red Hat bind package to configure the ISC BIND named(8) DNS // server as a caching only nameserver (as a localhost DNS resolver only). // // See /usr/share/doc/bind*/sample/ for example named configuration files. // # namedの動作に関する基本的な設定を行うoptionsステートメント options { # namedがどのアドレスとポートでリクエストを受け付けるかの指定 listen-on port 53 { 127.0.0.1; }; # namedがどのアドレスとポートでリクエストを受け付けるかの指定(IPv6用) listen-on-v6 port 53 { ::1; }; # マスターファイルの置き場所の指定 directory “/var/named”; # rndcコマンドのdumpdb命令で、namedがキャッシュしているデータをダンプする場合に出力されるファイル名 dump-file “/var/named/data/cache_dump.db”; # rndcコマンドのstats命令で、統計情報を出力する場合に出力されるファイル名 statistics-file “/var/named/data/named_stats.txt”; # namedが終了時にメモリの使用統計を出力されるファイル名 memstatistics-file “/var/named/data/named_mem_stats.txt”; # DNSサーバに問い合わせできるクライアントを限定する指定 allow-query { localhost; }; # 再帰的なクエリの許可 recursion yes; # DNSSECの有効の許可 dnssec-enable yes; dnssec-validation yes; dnssec-lookaside auto; /* Path to ISC DLV key */ bindkeys-file “/etc/named.iscdlv.key”; }; # BINDのログ出力方法の設定を行うloggingステートメント logging { channel default_debug { file “data/named.run”; severity dynamic; }; }; # ルートドメインに相当するゾーンの設定を行うzoneステートメント zone “.” IN { type hint; file “named.ca”; }; # includeで指定されたファイルの情報を設定として読み込む include “/etc/named.rfc1912.zones”; |
■named.rfc1912.zone
RFC1912で定められたDNSサーバとして必要最小限のDNSレコードを設定するための設定ファイルです。
named.rfc1912.zone
# cat named.rfc1912.zones // named.rfc1912.zones: // // Provided by Red Hat caching-nameserver package // // ISC BIND named zone configuration for zones recommended by // RFC 1912 section 4.1 : localhost TLDs and address zones // and http://www.ietf.org/internet-drafts/draft-ietf-dnsop-default-local-zones-02.txt // (c)2007 R W Franks // // See /usr/share/doc/bind*/sample/ for example named configuration files. // # localhost.localdomain というホスト名を参照するための設定 zone “localhost.localdomain” IN { type master; file “named.localhost”; allow-update { none; }; }; # localhost というホスト名を参照するための設定 zone “localhost” IN { type master; file “named.localhost”; allow-update { none; }; }; # ローカルループバックゾーンのIPv6用の逆引き zone “1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa” IN { type master; file “named.loopback”; allow-update { none; }; }; # ローカルループバックゾーンの逆引き zone “1.0.0.127.in-addr.arpa” IN { type master; file “named.loopback”; allow-update { none; }; }; # 0.0.0.0 に対する逆引き処理のための設定 zone “0.in-addr.arpa” IN { type master; file “named.empty”; allow-update { none; }; }; |
■設定の反映
# service named reload
参考)
・『CentOS5 で作るネットワークサーバ構築ガイド』
・自宅内DNSサーバーの構築 http://www.obenri.com/_dnsserver/named_conf.html
0 件のコメント:
コメントを投稿