DNSサーバ


■ DNSサーバ。

  DNSにおけるネームサーバのこと。
  ホスト名を元に、ホストのIPアドレスを教えてくれる機能を持つ。
  代表的なソフトウェアとしてはBINDがある。

■ BIND。バインド。Berkeley Internet Name Domain。

  DNSを司る代表的なアプリケーション。
  カリフォルニア大学バークレー校が最初に開発し、配布したDNS実装。
  世界に13箇所のルートネームサーバはBINDで運用されている(RFC2010)。
  ほとんどのUNIXに標準でインストールされているほか、
  WindowsNT/2000用のものも用意されている(BIND NT)。

  BINDはソースコードが公開されているため、現在3つの系統に分かれている。
  最新バージョンはそれぞれ、9.2.1、8.3.4、4.9.9(2002年11月現在)。
  次々と露呈するセキュリティホールを埋めるため、
  アップデートは頻繁に行われている。

  ネームサーバの対抗馬としては、
  バインドの問題点を解決した djbdns というソフトがあり、
  こちらも広く知られている。 

■ 基本的な設定。

  named.confで行なう。
  named.confはBINDが起動時に最初に読み込む設定ファイルである。
  ただしnamed.confに全ての情報を記述するのではない。

  BINDでは機能別に設定ファイルが分かれているので、
  これらを個々に設定し、named.conf内から参照しておく。
  そうすれば、起動時にあわせて読み込まれる仕組みになっている。

  具体的には、以下の4種類である。
  (1) 正引きゾーンファイル     ***.zone。
  (2) 逆引きゾーンファイル     ***.rev。
  (3) ループバックファイル     local.zone/local.rev。
  (4) ルートキャッシュファイル named.ca。

■ 正引きゾーンファイル。

  ホスト名からIPアドレスを解決するためのデータベース。
  正引きゾーンファイルでは、下記のレコードを設定する。 

  (1) SOAレコード。
      自身のゾーン全体に関する基本的な項目を設定する。後述。

  (2) NSレコード。Name Server Record。
      自分が管理するドメインのネームサーバをホスト名で指定する。

  (3) MXレコード。Mail Exchange Record。
      自分が管理するドメインのメールサーバをホスト名で指定する。
  
  (4) Aレコード。Address Record。
      ホスト名のIPアドレスへの変換を記述する。DBの本体。

  (5) CNAMEレコード。Canonical Name Record。
      ホストに別名がある場合にここで指定する。

■ 逆引きゾーンファイル。

  IPアドレスからホスト名を解決するためのデータベース。
  逆引きゾーンファイルでは下記のレコードを設定する。 

  (1) SOAレコード。Start of Authority Record。
      自身のゾーン全体に関する基本的な項目を設定する。後述。

  (2) NSレコード。Name Server Record。
      自分が管理するドメインのネームサーバをホスト名で指定。

  (3) PTRレコード。Pointer Record。 
      IPアドレスのホスト名への変換を記述する。
      IPアドレスは逆順で記載することに注意する。

■ ループバックファイル。

   ローカルホストのループバックアドレスの設定を行う。

■ ルートキャッシュファイル。

   ルートネームサーバのIPアドレスを記述する。

■ SOAレコード。Start of Authority Record。

  自身のゾーン全体に関する基本的な項目を設定する。

  (1) ホスト名/管理者のメールアドレス

  (2) シリアル番号
      ゾーン情報ファイルの新しさを示す数値。
      一般的には、設定日時と連番から作成。
      情報を更新するたびに数字を増やす。

  (3) リフレッシュ期間
      セカンダリDNSがゾーン情報を更新する間隔。

  (4) TTL          
      外部のサーバがゾーン情報をキャッシュする際の有効期間。

  (5) ネガティブキャッシュ 
      ドメインがないという情報の有効期間。

■ セキュリティ対策。

  (1) 専用のユーザ権限の作成。

    BINDを特権ユーザで実行すると、
    BINDのセキュリティホールに攻撃を受けた場合、
    その権限を奪取される可能性がある。

    これを防ぐために、named専用のユーザを作成し、
    そのユーザ権限でBINDを実行する必要がある。

  (2) チェンジルート。chroot。

    BINDから参照できる最上位のパスを、
    より下位のパス(etc/namedb等)に変更しておく。
    こうすることで、BIND経由でのシステムへの攻撃を防ぐ。

[ つづきはこちら ]

2004/03/16 pm


HOME |  BACK

楽天モバイル[UNLIMITが今なら1円] ECナビでポインと Yahoo 楽天 LINEがデータ消費ゼロで月額500円〜!


無料ホームページ 無料のクレジットカード 海外格安航空券 解約手数料0円【あしたでんき】 海外旅行保険が無料! 海外ホテル