chroot jail機能について
Turbolinux 10 Server(先行評価版)では、前バージョンの8 Serverよりもセキュリティ面を向上させる為、chroot jail が採用されています。しかもTurbolinux 10 Serverでは、この設定がデフォルトでOnになっている為、従来の設定ではBINDは実稼動してくれません。十分注意しましょう。
chroot jailとは?
chrootはファイルシステム内の特定のサブディレクトリを、仮想的なルートディレクトリとして見せかける機能です。つまり、通常/etcディレクトリと/var/namedディレクトリ以下にあるBINDの設定ファイルを、/var/named/chroot以下の/etcディレクトリと/var/namedディレクトリ以下に置くことによって、万が一クラッカーに権限を奪取された場合でも、その被害をchrootしたファイルシステム内にとどめることが出来る訳です。このようにchrootされた仮想的なルートディレクトリは、通常jail(拘置所、刑務所、牢屋)と呼ばれます。
/var /named /chroot /etc named.conf rndc.key /var /named /run /tmp /slaves named.ca named.local
※上の青色部分が仮想的ルートディレクトリです。
chroot jailの設定ファイル
chroot jailの設定ファイルは以下の場所にあります。
/etc/sysconfig/named
Turbolinux 10 Serverでは、この設定ファイルnamedの中のchroot設定行が以下のようにデフォルトで有効になっています。
# Currently, you can use the following options:
# ROOTDIR="/some/where" -- will run named in a chroot environment.
# you must set up the chroot environment before
# doing this.
# OPTIONS="whatever" -- These additional options will be passed to named
# at startup. Don't add -t here, use ROOTDIR instead.
ROOTDIR=/var/named/chroot ←該当の設定文もし、BINDを従来の設定のままで使いたい時は、この行の頭に「#」を付けてコメントアウト(無効化)しましょう。
ゾーンファイル設定の注意点
今回、新たにバーチャルドメインを登録する際、ちょっと躓いた事がありましたので、注意の為覚書を残します。/var/named/chroot/var/namedディレクトリ以下に置かれた各ゾーンファイルの属性ですが、ユーザがrootでグループがnamedでなくては正常に動いてくれません。新たにゾーンファイルを作る際、root権限で既存のファイルをコピーして内容を修正したので、ユーザ、グループ共にrootに変わっていた事に気が付きませんでした。本当に初歩的なミスですが、半月ほど悩み抜きましたので、戒めの為にもここに記録しておきます。尚、各設定ファイルのパーミッションは「640」です。