HOME / 日記 / Solaris11でのbindの設定方法
Date: 2011/11/15 | | Tags: Solaris11, bind, dns, named
まずは、pkgからbindをインストールして起動します。bindの細かい設定に関しては、様々なページを参照してください。
bind(named)が含まれているパッケージを検索します。
pkg search -r named
INDEX ACTION VALUE PACKAGE basename file usr/sbin/named pkg:/service/network/dns/bind@9.6.3.4.3-0.175.0.0.0.1.530
インストールします。
パッケージの中身を確認
pkg contents pkg:/service/network/dns/bind
PATH lib lib/svc lib/svc/manifest lib/svc/manifest/network lib/svc/manifest/network/dns lib/svc/manifest/network/dns/server.xml lib/svc/method/ lib/svc/method/dns-server usr usr/sbin usr/sbin/dnssec-dsfromkey usr/sbin/dnssec-keyfromlabel usr/sbin/dnssec-keygen usr/sbin/dnssec-signzone usr/sbin/named usr/sbin/named-checkconf usr/sbin/named-checkzone usr/sbin/named-compilezone usr/share usr/share/doc usr/share/doc/bind usr/share/doc/bind/migration.txt
lib/svc/manifest/network/dns/server.xmlというファイルがあるので、network/dns/severという名前のパッケージ名であることが分かります。
svcs -a | grep network/dns/sever
disabled 10月_29 svc:/network/dns/server:default
発見 :) 確認する
svcs -xv svc:/network/dns/server:default
svc:/network/dns/server:default (BIND DNS server) State: disabled since 2011年10月29日 01時36分41秒 Reason: Disabled by an administrator. See: http://sun.com/msg/SMF-8000-05 See: man -M /usr/man -s 1M named Impact: This service is not running.
らしい。manをみる。
man -M /usr/man -s 1M named
みると、/etc/named.confなルールらしいことが分かる。
manを読み進めると、dnsadminというユーザに、solaris.smf.manage.bindというAuthorizedをつけて作る話が書いてある。しかしdnsadminというユーザが誰が作るのか分からない(笑)パッケージシステムなのか、それともユーザなのか?
pkg searchでしらべてもわからなかったので、取りあえず作ることにした。
sudo groupadd dnsadmin sudo useradd -g dnsadmin -d /var/named -A solaris.smf.manage.bind dnsadmin
確認
tail -1 /etc/user_attr
dnsadmin::::type=normal;auths=solaris.smf.manage.bind
これで、RBACでbindの権限をdnsadminに与えたことになる。
SolarisはSMFを利用し、起動ユーザをroot以外から選ぶことができる。SMFのプロパティはsvccfgを併せて操作する。
sudo svccfg -s svc:/network/dns/server:default setprop start/user = dnsadmin sudo svccfg -s svc:/network/dns/server:default setprop start/group = dnsadmin
IPv6が良く分からないのでとりあえずdisableしておく(汗
sudo svccfg -s svc:network/dns/server:default setprop options/ip_interfaces=IPv4
こんな感じでワークを作っておく。
sudo mkdir -p /var/named sudo chown dnsadmin:dnsadmin /var/named sudo mkdir -p /var/named/stats sudo chown dnsadmin:dnsadmin /var/named/stats sudo mkdir -p /var/named/logs sudo chown dnsadmin:dnsadmin /var/named/logs
これに関しては、色々ドキュメントが世の中に転がっているので割愛。普通に書きます。
また、named.rootのファイルはパッケージないため、拾ってきましょう。
wget -O named.root ftp://ftp.internic.net/domain/named.root
設定が終わったら反映させる。SMFはsvccfgで設定しても、下記のコマンドを入れないと値が反映されない。
sudo svcadm refresh named
普通に起動する
sudo svcadm enable named
SMFは画面になにもでないが、
svcs -xv
で、エラーが出た場合、出力され、ログファイルのありか、manのありかまで画面出力される。