kailas.asm
山とシステム管理屋のメモサイト
開始行:
|RIGHT:100|LEFT:410|c
|~ソフトウェア|ISC BIND Version 9.2.1, 9.2.3, 9.2.4, 9.3.3|
|~OS(作業日)|Vine Linux 2.6 2002/12/05|
|~ |AIX 5.1 ML03 + C for AIX Ver6.0 2003/11/...
|~ |RedHat Linux AS 2.1|
|~マシン |xSerires x235|
|~ |RS/6000 44P-170, 7044-270|
|~ |pSerires 6H1|
|~ドキュメント |2002/11/27 001|
---------------------------------------------------------...
BIND9をchrootして稼働する方法を述べる
---------------------------------------------------------...
#contentsx
**DNS関連情報 [#a1117769]
-[[JPRS DNS関連技術情報>http://jprs.jp/tech/]]
**BIND9のインストール [#ub26af4a]
-用意したもの
--BIND 9.2.1のソース(9.2.3, 9.2.4も同様のサイト)
http://www.isc.org/products/BIND/bind9.html
ftp://ftp.isc.org/isc/bind9/9.2.1/bind-9.2.1.tar.gz
-インストール ()
--bindのコンパイル
# ./configure --prefix=/ --with-openssl=/usr/local
# make
--作業用ディレクトリにインストール
# mkdir /tmp/dns
# make install DESTDIR=/tmp/dns
--インストール先ディレクトリの作成 と コピー
# mkdir -p /usr/local/bind-jail/
# mkdir -p /usr/local/bind-jail/etc/
# mkdir -p /usr/local/bind-jail/home/
# mv /tmp/dns/bin /usr/local/bind-jail/
# mv /tmp/dns/sbin /usr/local/bind-jail/
# mv /tmp/dns/lib /usr/local/bind-jail/
# mv /tmp/dns/man /usr/local/bind-jail/
# mv /tmp/dns/include /usr/local/bind-jail/
# mkdir -p /usr/local/bind-jail/var/named/
# chown bind:bind /usr/local/bind-jail/var/named/
-- グループ・ユーザーの作成 / passwordファイルの作成
# /usr/sbin/groupadd bind
# /usr/sbin/useradd -d /home/bind -s /bin/false -g bind...
# grep bind /etc/passwd >> /usr/local/bind-jail/etc/passwd
# grep bind /etc/shadow >> /usr/local/bind-jail/etc/shadow
# grep bind /etc/group >> /usr/local/bind-jail/etc/group
- 共有ライブラリのコピー
使用しているライブラリの確認
# ldd /usr/local/bind-jail/sbin/named
libnsl.so.1 => /lib/libnsl.so.1 (0x4001d000)
libc.so.6 => /lib/libc.so.6 (0x40034000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000...
上記ライブラリをコピー
# cp -ip /lib/libnsl.so.1 /usr/local/bind-jail/lib/
# cp -ip /lib/libc.so.6 /usr/local/bind-jail/lib/
# cp -ip /lib/ld-linux.so.2 /usr/local/bind-jail/lib/
- デバイスファイルの作成
# mknod /usr/local/bind-jail/dev/null c 2 2
# chmod 666 /usr/local/bind-jail/dev/null
# mknod /usr/local/bind-jail/dev/zero c 2 3
# chmod 666 /usr/local/bind-jail/dev/zero
# mknod /usr/local/bind-jail/dev/random c 1 8
# chmod 666 /usr/local/bind-jail/dev/random
**BIND設定 [#p5cef738]
***SOAレコードの考察 [#p698cc67]
,項目,内容,RFC1537推奨値
,default TTL,キャッシュ有効時間,
,serial,ゾーンのシリアル番号,
,refresh,スレーブサーバがゾーンデータの最新性をチェックす...
,retry,スレーブサーバがマスターサーバにアクセスできなかっ...
,expiry,スレーブサーバがこの時間分マスターサーバにアクセ...
,negative TTL,ヒットしない情報のキャッシュ有効時間,4日
***トランザクション署名(TSIG) [#b9f40ba1]
-鍵の作成方法
/usr/local/bind-jail/sbin/dnssec-keygen -a HMAC-MD5 -b 1...
,オプション,,サンプル
,a,鍵のアルゴリズム,HAMC-MD5
,b,鍵の長さ,128bit
,n,鍵のタイプ,HOST
, ,鍵の名前,abc.test.jp
これによりカレントディレクトリにKabc.test.jp.+157+20385.p...
Kabc.test.jp.+157+20385.keyという2つのファイルが生成され...
-鍵の登録方法
named.confに下記のエントリーを追加する。xxxxxxは鍵の生成...
key abc.test.jp. {
algorithm "hmac-md5";
secret "xxxxxxxxxxxxxxx";
};
-鍵の命名方法
***rndc [#h4c611f1]
RNDCはネットワーク経由でnamedをコントロールする機能である...
-鍵の登録
--named.confへの登録
namedがrndcからリクエストを許可する鍵を登録する
controls {
inet 127.0.0.1 port 1111 allow { localhost; } key...
};
--rndc.confへの登録
rndcがnamedにリクエストを送信する際に送付される鍵を指定する
key skeleton_key {
algorithm "hmac-md5";
secret "生成した鍵";
};
options {
default-server localhost;
default-key skeleton_key;
};
-rndcの利用方法
--設定ファイルの再読込
# rndc reload
--スレーブゾーンの再確認
マスターサーバのゾーンが更新されていないか強制的に確認し...
# rndc refresh ゾーン名 IN ビュー名
# rndc refresh test.jp IN external
***Dynamic DNS [#vac920a6]
-動的更新を行うゾーンの登録
動的更新はデフォルトのACLで許可されていないためupdate-pol...
zone "test.jp" in {
type master;
file "master/test.jp.zone";
allow-query {
trusted;
};
allow-transfer {
trusted;
};
update-policy {
grant abc.test.jp. self abc.test.jp. CN...
};
};
-ACLの登録方法
-レコードのupdate方法
実際にゾーンの内容を更新するにはnsupdateコマンドを利用す...
/usr/local/bind-jail/bin/nsupdate -k Kabc.test.jp.+157+2...
カレントディレクトリに対応する鍵ファイルが存在しない場合...
/usr/local/bind-jail/bin/nsupdate -k /var:Kabc.test.jp.+...
nsupdateを起動するとプロンプトが「>」となりupdateするため...
> server 127.0.0.1
> prereq yxrrset abc.test.jp. CNAME
> update delete abc.test.jp. CNAME
> update add abc.test.jp. 300 IN CNAME host2.test.jp.
> send
また、これらのコマンドの内容が記述されたテキストファイル...
$ /usr/local/bind-jail/bin/nsupdate -k /var:Kabc.test.jp...
-DynamicDNS対応ゾーンの手動更新
動的に更新可能なゾーンに対して手動でレコードを更新する場...
BIND 9.3.x はrndcコマンドにより動的更新の受付開始・停止が...
--動的更新の受付停止
# rndc freeze
--動的更新の受付開始
# rndc unfreeze
***ゾーンの変更通知(DNS NOTIFY) [#hedebc12]
ゾーンを変更した際に、スレーブサーバに変更を通知する機能...
-すべてのゾーンに対して通知機能を無効にする場合
optionsに登録されているnofityの挙動よりも、各ゾーンに登録...
options {
notify no
};
-特定のゾーンに対して通知機能を有効にする場合(マスターサ...
notifyをonにした場合、NSレコードに登録されてるすべてのDNS...
zone "test.jp" {
type master;
file "test.jp.zone";
notify explicit;
also-notify {
192.168.1.1;
};
};
-通知を受け入れる設定
notifyの通知を受け入れるかはマスターサーバに登録されてい...
***DNSキャッシュのdump取得 [#h15c62d5]
-DUMP取得先設定
named.confのoptionsのセクションに指定します。jailしている...
options {
中略
dump-file "/home/bind/named.dump";
中略
};
-DUMPの取得
# rndc dumpdb
-DUMPファイルの確認
DUMPファイルはテキストファイルです。
# less /usr/local/bind-jail/home/bind/named.dump
;
; Start view external-in
;
;
; Cache dump of view 'external-in'
;
$DATE 20100614125338
; authanswer
. 179722 IN NS a.root-servers.n...
179722 IN NS b.root-servers.n...
179722 IN NS c.root-servers.n...
179722 IN NS d.root-servers.n...
179722 IN NS e.root-servers.n...
〜 中略 〜
; Address database dump
;
;
; Unassociated entries
;
; Dump complete
**dig [#xb258bb7]
***digによるゾーン転送 [#c4ab1800]
>$ dig @'''dns_server''' '''zone_name''' axfr
----
[1] http://www.isc.org/sw/bind/
[2] http://www.atmarkit.co.jp/flinux/index/indexfiles/bin...
[3] http://www5d.biglobe.ne.jp/%7Estssk/rfc2136j.html
#counter
終了行:
|RIGHT:100|LEFT:410|c
|~ソフトウェア|ISC BIND Version 9.2.1, 9.2.3, 9.2.4, 9.3.3|
|~OS(作業日)|Vine Linux 2.6 2002/12/05|
|~ |AIX 5.1 ML03 + C for AIX Ver6.0 2003/11/...
|~ |RedHat Linux AS 2.1|
|~マシン |xSerires x235|
|~ |RS/6000 44P-170, 7044-270|
|~ |pSerires 6H1|
|~ドキュメント |2002/11/27 001|
---------------------------------------------------------...
BIND9をchrootして稼働する方法を述べる
---------------------------------------------------------...
#contentsx
**DNS関連情報 [#a1117769]
-[[JPRS DNS関連技術情報>http://jprs.jp/tech/]]
**BIND9のインストール [#ub26af4a]
-用意したもの
--BIND 9.2.1のソース(9.2.3, 9.2.4も同様のサイト)
http://www.isc.org/products/BIND/bind9.html
ftp://ftp.isc.org/isc/bind9/9.2.1/bind-9.2.1.tar.gz
-インストール ()
--bindのコンパイル
# ./configure --prefix=/ --with-openssl=/usr/local
# make
--作業用ディレクトリにインストール
# mkdir /tmp/dns
# make install DESTDIR=/tmp/dns
--インストール先ディレクトリの作成 と コピー
# mkdir -p /usr/local/bind-jail/
# mkdir -p /usr/local/bind-jail/etc/
# mkdir -p /usr/local/bind-jail/home/
# mv /tmp/dns/bin /usr/local/bind-jail/
# mv /tmp/dns/sbin /usr/local/bind-jail/
# mv /tmp/dns/lib /usr/local/bind-jail/
# mv /tmp/dns/man /usr/local/bind-jail/
# mv /tmp/dns/include /usr/local/bind-jail/
# mkdir -p /usr/local/bind-jail/var/named/
# chown bind:bind /usr/local/bind-jail/var/named/
-- グループ・ユーザーの作成 / passwordファイルの作成
# /usr/sbin/groupadd bind
# /usr/sbin/useradd -d /home/bind -s /bin/false -g bind...
# grep bind /etc/passwd >> /usr/local/bind-jail/etc/passwd
# grep bind /etc/shadow >> /usr/local/bind-jail/etc/shadow
# grep bind /etc/group >> /usr/local/bind-jail/etc/group
- 共有ライブラリのコピー
使用しているライブラリの確認
# ldd /usr/local/bind-jail/sbin/named
libnsl.so.1 => /lib/libnsl.so.1 (0x4001d000)
libc.so.6 => /lib/libc.so.6 (0x40034000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000...
上記ライブラリをコピー
# cp -ip /lib/libnsl.so.1 /usr/local/bind-jail/lib/
# cp -ip /lib/libc.so.6 /usr/local/bind-jail/lib/
# cp -ip /lib/ld-linux.so.2 /usr/local/bind-jail/lib/
- デバイスファイルの作成
# mknod /usr/local/bind-jail/dev/null c 2 2
# chmod 666 /usr/local/bind-jail/dev/null
# mknod /usr/local/bind-jail/dev/zero c 2 3
# chmod 666 /usr/local/bind-jail/dev/zero
# mknod /usr/local/bind-jail/dev/random c 1 8
# chmod 666 /usr/local/bind-jail/dev/random
**BIND設定 [#p5cef738]
***SOAレコードの考察 [#p698cc67]
,項目,内容,RFC1537推奨値
,default TTL,キャッシュ有効時間,
,serial,ゾーンのシリアル番号,
,refresh,スレーブサーバがゾーンデータの最新性をチェックす...
,retry,スレーブサーバがマスターサーバにアクセスできなかっ...
,expiry,スレーブサーバがこの時間分マスターサーバにアクセ...
,negative TTL,ヒットしない情報のキャッシュ有効時間,4日
***トランザクション署名(TSIG) [#b9f40ba1]
-鍵の作成方法
/usr/local/bind-jail/sbin/dnssec-keygen -a HMAC-MD5 -b 1...
,オプション,,サンプル
,a,鍵のアルゴリズム,HAMC-MD5
,b,鍵の長さ,128bit
,n,鍵のタイプ,HOST
, ,鍵の名前,abc.test.jp
これによりカレントディレクトリにKabc.test.jp.+157+20385.p...
Kabc.test.jp.+157+20385.keyという2つのファイルが生成され...
-鍵の登録方法
named.confに下記のエントリーを追加する。xxxxxxは鍵の生成...
key abc.test.jp. {
algorithm "hmac-md5";
secret "xxxxxxxxxxxxxxx";
};
-鍵の命名方法
***rndc [#h4c611f1]
RNDCはネットワーク経由でnamedをコントロールする機能である...
-鍵の登録
--named.confへの登録
namedがrndcからリクエストを許可する鍵を登録する
controls {
inet 127.0.0.1 port 1111 allow { localhost; } key...
};
--rndc.confへの登録
rndcがnamedにリクエストを送信する際に送付される鍵を指定する
key skeleton_key {
algorithm "hmac-md5";
secret "生成した鍵";
};
options {
default-server localhost;
default-key skeleton_key;
};
-rndcの利用方法
--設定ファイルの再読込
# rndc reload
--スレーブゾーンの再確認
マスターサーバのゾーンが更新されていないか強制的に確認し...
# rndc refresh ゾーン名 IN ビュー名
# rndc refresh test.jp IN external
***Dynamic DNS [#vac920a6]
-動的更新を行うゾーンの登録
動的更新はデフォルトのACLで許可されていないためupdate-pol...
zone "test.jp" in {
type master;
file "master/test.jp.zone";
allow-query {
trusted;
};
allow-transfer {
trusted;
};
update-policy {
grant abc.test.jp. self abc.test.jp. CN...
};
};
-ACLの登録方法
-レコードのupdate方法
実際にゾーンの内容を更新するにはnsupdateコマンドを利用す...
/usr/local/bind-jail/bin/nsupdate -k Kabc.test.jp.+157+2...
カレントディレクトリに対応する鍵ファイルが存在しない場合...
/usr/local/bind-jail/bin/nsupdate -k /var:Kabc.test.jp.+...
nsupdateを起動するとプロンプトが「>」となりupdateするため...
> server 127.0.0.1
> prereq yxrrset abc.test.jp. CNAME
> update delete abc.test.jp. CNAME
> update add abc.test.jp. 300 IN CNAME host2.test.jp.
> send
また、これらのコマンドの内容が記述されたテキストファイル...
$ /usr/local/bind-jail/bin/nsupdate -k /var:Kabc.test.jp...
-DynamicDNS対応ゾーンの手動更新
動的に更新可能なゾーンに対して手動でレコードを更新する場...
BIND 9.3.x はrndcコマンドにより動的更新の受付開始・停止が...
--動的更新の受付停止
# rndc freeze
--動的更新の受付開始
# rndc unfreeze
***ゾーンの変更通知(DNS NOTIFY) [#hedebc12]
ゾーンを変更した際に、スレーブサーバに変更を通知する機能...
-すべてのゾーンに対して通知機能を無効にする場合
optionsに登録されているnofityの挙動よりも、各ゾーンに登録...
options {
notify no
};
-特定のゾーンに対して通知機能を有効にする場合(マスターサ...
notifyをonにした場合、NSレコードに登録されてるすべてのDNS...
zone "test.jp" {
type master;
file "test.jp.zone";
notify explicit;
also-notify {
192.168.1.1;
};
};
-通知を受け入れる設定
notifyの通知を受け入れるかはマスターサーバに登録されてい...
***DNSキャッシュのdump取得 [#h15c62d5]
-DUMP取得先設定
named.confのoptionsのセクションに指定します。jailしている...
options {
中略
dump-file "/home/bind/named.dump";
中略
};
-DUMPの取得
# rndc dumpdb
-DUMPファイルの確認
DUMPファイルはテキストファイルです。
# less /usr/local/bind-jail/home/bind/named.dump
;
; Start view external-in
;
;
; Cache dump of view 'external-in'
;
$DATE 20100614125338
; authanswer
. 179722 IN NS a.root-servers.n...
179722 IN NS b.root-servers.n...
179722 IN NS c.root-servers.n...
179722 IN NS d.root-servers.n...
179722 IN NS e.root-servers.n...
〜 中略 〜
; Address database dump
;
;
; Unassociated entries
;
; Dump complete
**dig [#xb258bb7]
***digによるゾーン転送 [#c4ab1800]
>$ dig @'''dns_server''' '''zone_name''' axfr
----
[1] http://www.isc.org/sw/bind/
[2] http://www.atmarkit.co.jp/flinux/index/indexfiles/bin...
[3] http://www5d.biglobe.ne.jp/%7Estssk/rfc2136j.html
#counter
ページ名: