FreeBSDで, なるべく小さい jail 環境で bind を動かすことを試みる. なお, 以下の記述においては, jail 環境の root を /jail/ns とし, BIND の各設定ファイルは /jail/ns/etc/namedb に置くものとする.
まずは, 必要最低限のファイルおよびディレクトリを作成. bind9のnamedを実行するには
が必要なので, これらを jail 環境の root に作成する.
# mkdir -p /jail/ns
# cd /jail/ns
# mkdir -p dev etc/namedb usr/lib usr/libexec usr/sbin var/run
# mknod dev/random c 2 3
# chmod 644 dev/random
# cp -p /usr/libexec/ld-elf.so.1 usr/libexec
# cp -p /usr/lib/libc.so.4 usr/lib
# ln -sf libc.so.4 usr/lib/libc.so
次に, namedのバイナリを作成し, jail内に作成.
% ./configure --prefix=/usr --sysconfdir=/etc/namedb --localstatedir=/var
% make
# install -cs bin/named/named /jail/ns/usr/sbin
この状態で
# ifconfig fxp0 inet 192.168.0.2/32 alias
# jail /jail/ns ns.example.org 192.168.0.2 /usr/sbin/named -d 3
と実行 *1 し, host や nslookup で名前解決できているかどうかを確認できる. もしできていない場合, 上記のように -d オプションをつけて実行すると /jail/ns/named.run というファイルができるので, これを見て問題解決していただきたい.
DNS のようなサービスは, ただ「動かせる」だけではあまりうれしくない. 「『起動と同時に』動かせる」ことが是非とも必要となる. 以下では, 自動起動のための設定を行う. 基本的には
が必要だが, rcスクリプトそのものを除き, これらは /etc/rc.conf に記述する. 具体的には, 以下の3行を /etc/rc.conf に追加する. *2
ifconfig_fxp0_alias0="inet 192.168.0.2 netmask 255.255.255.255" syslogd_flags="-l /jail/ns/dev/log" local_startup="/usr/local/etc/rc.d /usr/X11R6/etc/rc.d /jail/rc.d"
ここでは, それぞれ上記に列挙した順番に設定を記述したが, とくに順番に意味はない. local_startup には, rcスクリプトを置くディレクトリを列挙するが, 仮に jail 環境のスクリプトは /jail/rc.d に置くものとする. ここに, named 起動用に, /jail/rc.d/named.sh を作成する.
#!/bin/sh
JAILBIN=/usr/sbin/jail
JAILROOT=/jail/ns
NAMEDBIN=/usr/sbin/named
case $1 in
start)
if [ -x $JAILBIN -a -x ${JAILROOT}${NAMEDBIN} ]; then
echo -n ' jailed-named'
$JAILBIN $JAILROOT ns.angel.fan.gr.jp 192.168.0.2 $NAMEDBIN
fi
;;
stop)
killall named
;;
*)
echo "usage: $0 {start|stop}" 1>&2
;;
esac
あまり凝ったことをする必要もないので, 最低限 start および stop を受け付けられるようになっておれば問題ない.
ダイアルアップの頃から, Linuxでbindを動かしていたのだが, 従来環境に比べると, なぜかうまくひけないことが多く, しばしば host コマンドが失敗する. しばらく様子を見, どちらで正式運用するかを決めたいところ.
会社に財テク関連の勧誘電話がかかってきた。「興味ありません」と切ろうとすると逆切れされた。そこまではまあいいのだが、「お前の家の電話番号わかってるぞ」と言いつつ実家の番号を言ってきた。どうやらうしろで本当に実家へ電話をかけていた模様*1。
無理矢理電話を切ったところ、何度もかけ直してきたので、数名に協力いただき、毎回対応者を変えたところ、4回目ぐらいで「いい加減にしろ」と言ったきりかかってこなくなったのだが、実家の番号をおさえられているうえ、本当にかけるあたり、恐ろしい。
そのうち、実家や身のまわりが襲撃されるようなことだけはないことを祈る…
*1 あとで実家に確認したところ「かかってきた」とのこと。「いません」で済んだらしい。まあそらおらんわな。
mixiからのお知らせです。simm さんのページ全体のアクセス数が 1800アクセスを超えました。記念すべき1800アクセス目の訪問者は TAP さんでした!
ということで、いつもいつもありがとうございます。
*Messages* の更新情報取得には、antenna.lirs もしくは index.rdfをご利用ください。 豪傑アンテナ の LIRSからも取得可能です。
1 X [呼んだ?(謎)]