Solaris10:BIND-9.6.0-P1導入

提供:KinusatiWiki
移動: 案内, 検索

このページの情報は古いです。以下のページに移行しました。


目次

BIND 9.6.0-P1 インストール

せっかくなので最新のBIND 9.6.0-P1をインストールしてみる

設定概要は以下

  • /var/namedでchroot
  • named:namedで起動
  • /usr/local/sbin/namedを起動

ユーザ追加

# groupadd -g 53 named
# useradd -u 53 -g 53 -d /var/named -s /bin/false named

コンパイル

./configure時にsysconfdirを指定することで、/usr/local/etc/rndc.keyを読み取らせる。

# wget http://ftp.isc.org/isc/bind9/9.6.0-P1/bind-9.6.0-P1.tar.gz
# gzip -dc bind-9.6.0-P1.tar.gz | tar xvfp - 
# cd bind-9.6.0-P1
# ./configure --sysconfdir=/usr/local/etc --disable-ipv6

chroot

Solaris10での構築方法なので、OSが変わればデバイスの番号も変わります。あしからず。

1. chrootディレクトリ作成

# mkdir -p /var/named/etc/namedb
# mkdir -p /var/named/etc/namedb/master
# mkdir -p /var/named/etc/namedb/slave
# mkdir -p /var/named/var/log
# mkdir -p /var/named/var/run
# mkdir -p /var/named/var/dump
# mkdir -p /var/named/var/stats
# mkdir -p /var/named/usr/share/lib
# mkdir /var/named/dev
# chown -R named:named /var/named/etc/namedb
# chown -R named:named /var/named/var/log
# chown -R named:named /var/named/var/run
# chown -R named:named /var/named/var/dump
# chown -R named:named /var/named/var/stats

2. デバイス作成

# cd /var/named/dev
# mknod log c 21 5
# mknod null c 13 2
# mknod random c 149 0
# mknod poll c 135 0
# chmod 666 poll

3. timezone系のファイルをコピー

# cp -R /usr/share/lib/zoneinfo /var/named/usr/share/lib/

初期設定

rndcを利用可能とする

BINDのコントロールに利用するrndcコマンドを設定する

1. rndc.keyを作成する

# /usr/local/sbin/rndc-confgen > /usr/local/etc/rndc.key
# vi /usr/local/etc/rndc.key
key "rndc-key" {
        algorithm hmac-md5;
        secret "xxxxxxxxxx";
};


2. rndc-confgenの設定をnamed.confに記載

rndc-confgenで表示されたコンフィグの中で、コメントアウトで表示された"key"・"controls"項目を/var/named/etc/named.confに転記する。このときコメントアウトは外す。

key "rndc-key" {
      algorithm hmac-md5;
      secret "xxxxxxxxxxx";
};
controls {
      inet 127.0.0.1 port 953
              allow { 127.0.0.1; } keys { "rndc-key"; };
};

named.conf設定

設定方針は以下の通り

  • ゾーン提供およびキャッシュサーバとして動作させる。フォワーダーにはIIJ DNSを利用する
  • secure bind templateおよびRFC, IANAの指針に基づき設定する
  • chrootで動作させる
  • ログファイルは/var/named/var/log/配下に出力する。ログファイルの保存は100m x 30世代とする。
  • BINDのバージョン問い合わせは適当なバージョンを返すこととする

設定結果は以下を参照

/var/named/etc/named.conf

ゾーンファイルを設置

詳細は以下ファイルを参照。すべて/var/named/etc/namedb/master配下に設置

自動起動設定

OS標準で導入されているBINDを以下の通り設定変更する

1. named/namedで起動させる設定を追加

# svccfg -s dns/server:default setprop start/user=named
# svccfg -s dns/server:default setprop start/group=named

2. /usr/local/sbin/namedで起動させる

# svccfg -s dns/server:default setprop options/server = astring: \"/usr/local/sbin/named\"

3. chroot環境設定

# svccfg -s dns/server:default setprop options/chroot_dir = astring: \"/var/named\"
# svccfg -s dns/server:default setprop options/configuration_file = astring: \"/etc/named.conf\"

4. manのPATHを修正

# svccfg -s dns/server setprop tm_man_named/manpath = astring: \"/usr/local/share/man\"

5. 権限修正。proc_setidを追加

# svccfg -s dns/server:default setprop start/privileges = astring: \
\"basic,\!proc_session,\!proc_info,\!file_link_any,net_privaddr,file_dac_read,file_dac_search,sys_resource,proc_chroot,proc_setid\"

6. 設定確認

# svccfg -s dns/server:default listprop
# svccfg -s dns/server listprop

7. 設定反映

# svcadm refresh dns/server

8. サービス起動

# svcadm enable dns/server
個人用ツール