ネットワーク環境構築⑦BINDの設定   
 
BINDの設定ですね。GUIで作成する方法でやっていきます。
 
【1】BIND(NAMED)の初期設定ファイルでルートディレクトリーを設定します。
  bind-chrootをインストールしているので”
 ROOTDIT=”/var/named/chroot” "を追加します。
  ※ルート権限でGEDITを立ち上げ修正する。
  【 /etc/sysconfig/named 】
# BIND named process options
# ~~~~~~~~~~~~~~~~~~~~~~~~~~
# Currently, you can use the following options:
#
# ROOTDIR="/var/named/chroot" -- will run named in a chroot environment.
# you must set up the chroot environment
# (install the bind-chroot package) before
# doing this.
# NOTE:
# Those directories are automatically mounted to chroot if they are
# empty in the ROOTDIR directory. It will simplify maintenance of your
# chroot environment.

# - /var/named
# - /etc/pki/dnssec-keys
# - /etc/named
# - /usr/lib64/bind or /usr/lib/bind (architecture dependent)
#
# Those files are mounted as well if target file doesn't exist in
# chroot.
# - /etc/named.conf
# - /etc/rndc.conf
# - /etc/rndc.key
# - /etc/named.rfc1912.zones
# - /etc/named.dnssec.keys
#
# Don't forget to add "$AddUnixListenSocket /var/named/chroot/dev/log"
# line to your /etc/rsyslog.conf file. Otherwise your logging becomes
# broken when rsyslogd daemon is restarted (due update, for example).
#
# OPTIONS="whatever" -- These additional options will be passed to named
# at startup. Don't add -t here, use ROOTDIR instead.
#
# KEYTAB_FILE="/dir/file" -- Specify named service keytab file (for GSS-TSIG)
#
# DEBUG="yes|no" -- This option controls if you would like to debug
# named process. If you set this option to "yes" then
# /var/named/ directory become writable by named user
# and named will be able to write core dumps there.
ROOTDIR="/var/named/chroot
    気になる英文ですね(赤字!!あれあれ最後に”が足りないのは後で分かりました。!!
 
【2】”アプリケーション”→”システムツール”→”ドメインネームシステム”をクリックします。
  
   
  あれあれ、エラー出ちゃいましたよね! 
  俺の英語力の無さかなあ!まあ、”OK”をクリックするしかないですよね!
 
【3】無理なんだろうって思ってる上に仕打ちがありました。
 
 
【4】”BIND設定ファイルが見つかりませんでした。”&”デフォルト....”ですね。
  
BIND(NAMED)の初期化で見た”/etc/sysconfig/named”の
赤字から従い初期ファイルを設定することにします。
こんなところで失敗談をするとは、、、、すいません。
 
【5】必要なファイルがあるかどうかを確認します。
   端末をルート権限にしておき”ls”コマンドで調べます。
【BIND-chrootでインストールされたDirectory】
var/named/chroot /var/named/
var/named/chroot/etc/pki/dnssec-keys/
var/named/chroot/etc/named/
var/named/chroot/usr/lib64/bind/

【コピーするBINDの設定ファイル、Directory 
/etc/named.conf  
/etc/rndc.conf 存在しない
/etc/rndc.key  
/etc/named.rfc1912.zones  
/etc/named.dnssec.keys  
/etc/pki/ 中身のコピーするの?

【コピー先ファイル、Directory】  
/var/named/chroot/etc/named.conf  
/var/named/chroot/etc/rndc.conf 存在しない、作成?
/var/named/chroot/etc/rndc.key  
/var/named/chroot /etc/named.rfc1912.zones  
/var/named/chroot /etc/named.dnssec.keys  
/var/named/chroot/etc/pki/ 中身のコピーするの?
    
 【量が多いですが、調査で使用したコマンドと結果です。】
 ①【 ls -R -F -l /var/named  】
 ②【 ls -F -R -l /etc/named* 】
 ③【 ls -F -R -l /etc/rndc* 】
 ④【 ls -F -R -l /etc/pki 】
     
【6】指示されたファイル、存在するファイルをコピーします。(個別に精査していません)
cp /etc/named.conf /var/named/chroot/etc
cp /etc/named.rfc1912.zones /var/named/chroot/etc
cp /etc/named.dnssec.keys /var/named/chroot/etc
cp /var/named/named.ca /var/named/chroot/var/named
cp /var/named/named.empty /var/named/chroot/var/named
cp /var/named/named.localhost /var/named/chroot/var/named
cp /var/named/named.loopback /var/named/chroot/var/named
cp -r /etc/pki/dnssec-keys /var/named/chroot/etc/pki
 
【7】”アプリケーション”→”システムツール”→”ドメインネームシステム”をクリックします。 
  
 

 
  
ありゃりゃ、同じエラーメッセージですね。
”/etc/sysconfig/named”を変更した後、エラーが出てるんですね。
あれあれ
"がひとつ足りないんだ。
ROOTDIR="/var/named/chroot

ROOTDIR="/var/named/chroot”
再度、”アプリケーション”→”システムツール”→”ドメインネームシステム”をクリックします。
 【8】出ましたね。まあこんなもんでいいですね。
 
 
【9】その後、GUIいろいろやりましたが、なかなかいうことを利いてくれませんね。
①named.confを削除して、起動すると警告が表示された後、初期ファイルを作ってくれます。
 しかし、もともとインストールされたnamed.confと細かいところで違いますね。
②”include”は見てくれますが、ゾーンの”include”作成してくれません。
③keyについても、includeが違うファイル(中身も違う)を示しています。
④インターネット転送ゾーン”.”は、削除することが出来ないので、viewの中で定義する為には
 直接named.confを修正しなければなりません。
⑤optionのパラメータを追加してみたら、ソースをばらばらにされてしまいました。
 syntaxがそうならいいのですが不安ですね。
 という訳でドGUIは使えないというか、使っているsampleがないし、
同じように作成することが出来きないということですね。
しかも白紙からは古い初期値、、、使えねえなと思いつつ!
よく調べてみたら2005のころの初期ファイルと同じですね。
 WEBで検索しても設定ファイルの構文がいろいろあるので迷います。
viewとかの定義もありますが???て感じですね。
【テキストエディターで新しい設定ファイルを修正、作成することにしました。】
 BINDがインストールで設定したファイルが新しいと考えて進めます。(比較です)
 
【10】”/var/named/chroot/etx/named.conf”を修正します。(パスはROOTDIRの/etc/)
    ※ルート権限でGEDITを立ち上げ修正する。

//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//

options {
       
listen-on port 53 { 127.0.0.1; 192.168.11.0/24; };
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
       
allow-query     { localhost; 192.168.11.0/24; };
        recursion yes;
        dnssec-enable yes;
        dnssec-validation yes;
        dnssec-lookaside . trust-anchor dlv.isc.org.;
      
forwarders { 192.168.11.1; };
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

view "internal" {
        zone "." IN {
                type hint;
                file "named.ca";
        };

        include "/etc/named.rfc1912.zones";
       
include "/etc/named.kuwagatalive.mydns.jp.zones";
};


include "/etc/named.dnssec.keys";
include "/etc/pki/dnssec-keys/dlv/dlv.isc.org.conf";
 

white:修正なし  green:修正  yellow:追加
多くのサンプルは、内部変換と外部変換のVIEWを定義していますが
今回は、外部変換はいらないので内部変換のみゾーンを追加します。
また、もともとあるlocal系のゾーンとdnssec.keyはそのままということでいきます。 
 
前はrndc.keyでしたね。
 
【11】追加したincludeにサーバーの順引き、逆引きゾーンを定義する為に
   ”/var/named/chroot/etc/named.kuwagatalive.mydns.jp.zones”を作成します。
   ※ルート権限でGEDITを立ち上げ作成する。

zone "kuwagatalive.mydns.jp" {
        type master;
        file "kuwagatalive.mydns.jp.db" ;
};

zone "11.168.192.in-addr.arpa" {
        type master;
        file "11.168.192.in-addr.arpa.db" ;
};


    私のルーターは、”192.168.11.1”なので一般のsampleとは違います。(”named.conf”もね!)
    ”kuwagatalive.mydns.jp.db”と”11.168.192.in-addr.arpa.db”を作成します。
【12】内部向け順引きデータベースファイルを作成します。
   ”/var/named/chroot/var/named/kuwagatalive.mydns.jp.db”を作成します。
   パスは、(ROOTDIR="/var/named/chroot/"にdirectory "/var/named"を付加した場所です。
   ルート権限でGEDITを立ち上げ作成する。

$TTL    86400
@               IN      SOA     kuwagatalive.mydns.jp.  root.kuwagatalive.mydns.jp. (
                                2009113001      ;       Serial
                                3h              ;       Refresh
                                1h              ;       Retry
                                1w              ;       Expire
                                1h )            ;       Minimum

                IN      NS      kuwagatalinux.kuwagatalive.mydns.jp.
                IN      MX 10   kuwagatalinux.kuwagatalive.mydns.jp.
@               IN      A       192.168.11.21
kuwagatalinux IN        A       192.168.11.21          
www             IN      A       192.168.11.21
ftp             IN      A       192.168.11.21
mail            IN      A       192.168.11.21


 
【13】内部向け逆引きデータベースファイルを作成します。
   ”/var/named/chroot/var/named/11.168.192.in-addr.rlpa.db”を作成します。
   ルート権限でGEDITを立ち上げ作成する。

$TTl    86400
@       IN      SOA     kuwagatalive.mydns.jp. root.kuwagatalive.mydns.jp.      (
                        2009113001      ;       Serial
                        3h              ;       Refresh
                        1h              ;       Retry
                        1w              ;       Expire
                        1h )            ;       minmum

        IN      NS      kuwagatalinux.kuwagatalive.mydns.jp.
21      IN      PTR     kuwagatalinux.kuwagatalive.mydns.jp.

 
【14】セキュリティの変更を行います。
   変更しないとエラーが出てきます。(BINDのエラーメッセージ確認 
   ※端末を立ち上げルート権限にし、コマンドで変更します。

chown -R named.named /var/named/chroot/*

 
CHOWN(1)                              FSF                             CHOWN(1)

名前
       chown -
ファイルの所有者とグループを変更する

書式
       chown [
オプション]... OWNER[.[GROUP]] FILE...
       chown [
オプション]... .GROUP FILE...
       chown [
オプション]... --reference=RFILE FILE...

説明
      
このマニュアルはGNU chown コマンドについての記述である。 chown コマン
      
ドは、指定されたそれぞれのファイルのユーザおよびグループ、もしくはい ず
      
れ かの所有権を、オプションではない最初の引数に従って、以下のように変更
      
する。ユーザ名 (もしくは数値の user ID) のみを指定した場合、それぞれ の
      
フ ァイルの所有者は指定したユーザになり、グループは変わらない。ユーザ名
      
に続けてコロンもしくはドットとグループ名 (もしくは数値の group ID) を間
      
に スペースを入れずに指定した場合、同じようにそれらのファイルのグループ
      
所有権も指定したグループに変わる。ユーザ名に続いてコロンもしくはドッ ト
      
が あるのにグループ名が無い場合、ファイルの所有権はそのユーザになり、フ
      
ァイルのグループはそのユーザのログイングループに変更される。コロンも し
      
く はドットとグループは指定されているがユーザ名が無い場合、ファイルのグ
       
ループのみが変更される。

       -R, --recursive
             
ファイルやディレクトリの所有権を再帰的に変更する。

 やっと設定の巻終わり