1.4. BIND DNS サーバーでのログの設定
bind
パッケージによって提供されるデフォルトの /etc/named.conf
ファイル内の設定は、default_debug
チャネルを使用し、メッセージのログを /var/named/data/named.run
ファイルに記録します。default_debug
チャネルは、サーバーのデバッグレベルがゼロ以外の場合にのみエントリーをログに記録します。
さまざまなチャネルおよびカテゴリーを使用して、BIND を設定して、定義された重大度でさまざまなイベントを個別のファイルに書き込むことができます。
前提条件
- BIND は、たとえばキャッシングネームサーバーとしてすでに設定されています。
-
named
またはnamed-chroot
サービスが実行しています。
手順
/etc/named.conf
ファイルを編集し、category
およびchannel
フレーズをlogging
ステートメントに追加します。次に例を示します。logging { ... category notify { zone_transfer_log; }; category xfer-in { zone_transfer_log; }; category xfer-out { zone_transfer_log; }; channel zone_transfer_log { file "/var/named/log/transfer.log" versions 10 size 50m; print-time yes; print-category yes; print-severity yes; severity info; }; ... };
この設定例では、BIND はゾーン転送に関連するメッセージのログを
/var/named/log/transfer.log
に記録します。BIND は最大10
バージョンのログファイルを作成し、最大サイズが50
MB に達するとローテーションします。category
句は、BIND がカテゴリーのメッセージを送信するチャネルを定義します。channel
句は、バージョン数、最大ファイルサイズ、および BIND がチャネルにログ記録する必要がある重大度レベルを含むログメッセージの宛先を定義します。イベントのタイムスタンプ、カテゴリー、および重大度のログ記録を有効にするなどの追加設定はオプションですが、デバッグ目的で役立ちます。ログディレクトリーが存在しない場合は作成し、このディレクトリーの
named
ユーザーに書き込み権限を付与します。# mkdir /var/named/log/ # chown named:named /var/named/log/ # chmod 700 /var/named/log/
/etc/named.conf
ファイルの構文を確認します。# named-checkconf
コマンドが出力を表示しない場合は、構文に間違いがありません。
BIND を再起動します。
# systemctl restart named
change-root 環境で BIND を実行する場合は、
systemctl restart named-chroot
コマンドを使用してサービスを再起動します。
検証
ログファイルの内容を表示します。
# cat /var/named/log/transfer.log ... 06-Jul-2022 15:08:51.261 xfer-out: info: client @0x7fecbc0b0700 192.0.2.2#36121/key example-transfer-key (example.com): transfer of 'example.com/IN': AXFR started: TSIG example-transfer-key (serial 2022070603) 06-Jul-2022 15:08:51.261 xfer-out: info: client @0x7fecbc0b0700 192.0.2.2#36121/key example-transfer-key (example.com): transfer of 'example.com/IN': AXFR ended
関連情報
-
named.conf(5)
man ページ - BIND 管理者リファレンスマニュアル