「BIND DNSサーバーの設定」の版間の差分

提供:雑廉堂Wiki
 
(同じ利用者による、間の10版が非表示)
5行目: 5行目:


以下では、Samba AD DCバックエンドとして利用できる基本的なBINDのインストール方法を説明しています。
以下では、Samba AD DCバックエンドとして利用できる基本的なBINDのインストール方法を説明しています。
{{Imbox
| type = content
| style = margin:4px 2%;
| text = Sampa AD は、tkey-gssアップデートをサポートするDNSサーバーに(たとえそのようなサポートがなくとも)利用されますが、Samba チームは、これを推奨せず、サポートもしません。これは、セキュリティリスクになる可能性があります。
}}
{{Imbox
| type = notice
| style = margin:4px 2%;
| text = 内部DNSサーバからBind9 DNSサーバーに変更したい場合、[[Samba AD DCのDNSバックエンドの変更]]も読む必要があります。
}}
----
[[Category:Active Directory]]
[[Category:DNS]]


== BINDのインストール ==
== BINDのインストール ==
41行目: 59行目:


上級ユーザーで、ソフトウェアのコンパイル方法を知っている場合は、このインストールモードを使用してください。
上級ユーザーで、ソフトウェアのコンパイル方法を知っている場合は、このインストールモードを使用してください。




47行目: 64行目:


サポートされているBINDのバージョンはhttps://www.isc.org/software/bindからダウンロードしてください。
サポートされているBINDのバージョンはhttps://www.isc.org/software/bindからダウンロードしてください。




59行目: 75行目:
<pre># make
<pre># make
# make install</pre>
# make install</pre>


==== BINDのユーザーとグループの追加 ====
==== BINDのユーザーとグループの追加 ====
66行目: 83行目:
GID <code>25</code>を使用して<code>named</code>グループを作成するには:
GID <code>25</code>を使用して<code>named</code>グループを作成するには:


<pre># groupadd -g 25 named</pre>
# groupadd -g 25 named
プライマリグループが<code>named</code>で、ホームディレクトリが<code>/var/named/</code>、かつ有効なシェルを持たないUID <code>25</co
 
de>の<code>named</code>アカウントを作成するには:
プライマリグループが<code>named</code>で、ホームディレクトリが<code>/var/named/</code>、かつ有効なシェルを持たないUID <code>25</code>の<code>named</code>アカウントを作成するには:


<pre># useradd -u 25 -g named -d /var/named -M -s /sbin/nologin named</pre>
# useradd -u 25 -g named -d /var/named -M -s /sbin/nologin named
詳細は、<code>useradd (8)</code>および<code>groupadd (8)</code>のマニュアルページを参照してください。
詳細は、<code>useradd (8)</code>および<code>groupadd (8)</code>のマニュアルページを参照してください。
== BINDの設定 ==
=== named.confファイルの設定 ===
ディレクトリを見つけるために、BINDは<code>named.conf</code>ファイルを読み込むために使用します:
<pre># named -V
BIND 9.x.y built with ... '--sysconfdir=/etc' ...</pre>
前の例では、BINDは<code>/etc/named.conf</code>ファイルから構成を読み取ります。
以下は基本的な設定ファイルです:
<pre># Global Configuration Options
options {
    auth-nxdomain yes;
    directory &quot;/var/named&quot;;
    notify no;
    empty-zones-enable no;
    # IP addresses and network ranges allowed to query the DNS server:
    allow-query {
        127.0.0.1;
        10.99.1.0/24;
    };
    # IP addresses and network ranges allowed to run recursive queries:
    # (Zones not served by this DNS server)
    allow-recursion {
        127.0.0.1;
        10.1.1.0/24;
    };
    # Forward queries that can not be answered from own zones
    # to these DNS servers:
    forwarders {
        8.8.8.8;
        8.8.4.4;
    };
    # Disable zone transfers
    allow-transfer {
        none;
    };
};
# Root Servers
# (Required for recursive DNS queries)
zone &quot;.&quot; {
  type hint;
  file &quot;named.root&quot;;
};
# localhost zone
zone &quot;localhost&quot; {
    type master;
    file &quot;master/localhost.zone&quot;;
};
# 127.0.0. zone.
zone &quot;0.0.127.in-addr.arpa&quot; {
    type master;
    file &quot;master/0.0.127.zone&quot;;
};</pre>
使用されるパラメータとオプションの詳細については、<code>named.conf (5)</code>のマニュアルページを参照してください。
前の例には、Samba AD DNSサーバーを設定するために必要な<code>BIND9_DLZ</code>構成は含まれていません。モジュールの設定方法の詳細については、「[[BIND9 DLZ DNSバックエンド]]」を参照してください。
{{imbox
| type  = content
| style = margin:4px 2%;
| text  = ADドメインの正引きまたは逆引きゾーンレコードをnamed.confファイルに追加しないでください。これらのゾーンはADに動的に格納されます。
}}
=== DNSルートサーバーリストのダウンロード ===
* <code>/var/named/named.root</code>ファイルに最新のDNSルートサーバーの一覧をダウンロードします。
<pre># wget -q -O /var/named/named.root http://www.internic.net/zones/named.root</pre>
* BINDユーザーがルートサーバーのリストを読み取るようにします。
<pre># chown root:named /var/named/named.root
# chmod 640 /var/named/named.root</pre>
{{imbox
| style = margin:4px 2%
| text  = 任意で、ファイルを自動的に更新するようにCronジョブを設定します。
}}
=== localhostゾーンファイルの作成 ===
* <code>/var/named/master/localhost.zone</code>ファイルに<code>localhost</code>転送ゾーンを作成します。
<pre>$TTL 3D
$ORIGIN localhost.
@      1D      IN    SOA    @      root (
                      2013050101      ; serial
                      8H              ; refresh
                      2H              ; retry
                      4W              ; expiry
                      1D              ; minimum
                      )
@      IN      NS      @
        IN      A      127.0.0.1</pre>
* BINDユーザーがゾーン・ファイルを読み取るようにします。
<pre># chown named:named /var/named/master/localhost.zone
# chmod 640 /var/named/master/localhost.zone</pre>
=== 0.0.127.in-addr.arpaゾーンファイルの作成 ===
* <code>/var/named/master/0.0.127.zone</code>ファイルに<code>0.0.127.in-addr.arpa</code>リバースゾーンを作成します。
<pre>$TTL 3D
@      IN      SOA    localhost. root.localhost. (
                        2013050101      ; Serial
                        8H              ; Refresh
                        2H              ; Retry
                        4W              ; Expire
                        1D              ; Minimum TTL
                        )
      IN      NS      localhost.
1      IN      PTR    localhost.</pre>
* BINDユーザーがゾーン・ファイルを読み取るようにします。
<pre># chown named:named /var/named/master/0.0.127.zone
# chmod 640 /var/named/master/0.0.127.zone</pre>
=== デーモンの起動 ===
<code>named</code>ユーザーでBINDデーモンをスタートするには:
<pre># named -u named</pre>
または、<code>systemctl</code>や<code>service</code>などのオペレーティング・システム・ツールを使用して、デーモンを開始することもできます。 詳細については、ディストリビューションののドキュメントを参照してください。
{{imbox
| style = margin:4px 2%
| text  = システムの起動時に自動的にデーモンを開始できるようにします。 詳細については、ディストリビューションのドキュメントを参照してください。
}}
=== ゾーンのテスト ===
次の例では、ローカルマシン(<code>127.0.0.1</code>)のDNSサービスにクエリを実行します。
<code>localhost</code>正引きゾーンをテストするには:
<pre># host -t A localhost 127.0.0.1
Using domain server:
Name: 127.0.0.1
Address: 127.0.0.1#53
Aliases:
localhost has address 127.0.0.1</pre>
<code>0.0.127.in-addr.arpa</code>逆引きゾーンをテストするには:
<pre># host -t PTR 127.0.0.1 127.0.0.1
Using domain server:
Name: 127.0.0.1
Address: 127.0.0.1#53
Aliases:
1.0.0.127.in-addr.arpa domain name pointer localhost.</pre>
=== BIND9_DLZモジュールの設定 ===
詳細については、「[[BIND9 DLZ DNSバックエンド]]」を参照してください。

2019年3月6日 (水) 23:26時点における最新版

はじめに

もし、Samba Active Directory(AD)ドメインコントローラ(DC)をBIND9_DLZを使用して構成することを計画しているのなら、まず最 初にBIND DNSサーバをインストールし設定しておく必要があります。

以下では、Samba AD DCバックエンドとして利用できる基本的なBINDのインストール方法を説明しています。

{{#invoke:Message box|imbox}}

{{#invoke:Message box|imbox}}



BINDのインストール

サポートされるBINDバージョンのリストについては、「BIND9 DLZモジュールの設定」を参照してください。

{{#invoke:Message box|imbox}}

パッケージのインストール

ディストリビューションで提供されているパッケージを使用してBINDをインストールすることをお勧めします。インストールが簡単で、利用可能 な場合に自動的にアップデートを受信するために、このインストールモードを選択してください。パッケージのインストール方法の詳細について は、ディストリビューションのパッケージマネージャのドキュメントを参照してください。

パッケージプロバイダが以下のオプションを使ってBINDをコンパイルしていることを確認してください。

  • Kerberosを使用した安全な動的DNS更新のための--with-gssapi=yesまたは--with-gssapi=/usr(または同様のもの)
  • --with-dlopen 動的にロード可能なゾーン(DLZ)

{{#invoke:Message box|imbox}}


ビルドオプションを一覧表示するには:

# named -V
BIND 9.x.y built with ... '--with-dlopen=yes' '--with-gssapi=yes' ...

BINDのコンパイルとインストール

上級ユーザーで、ソフトウェアのコンパイル方法を知っている場合は、このインストールモードを使用してください。


ソースのダウンロード

サポートされているBINDのバージョンはhttps://www.isc.org/software/bindからダウンロードしてください。


BINDのコンパイル

  • 少なくとも次のパラメータをconfigureコマンドに渡します。
# ./configure --with-gssapi=/usr/include/gssapi --with-dlopen=yes
必要に応じて、さらにパラメータを追加します。
  • ビルドしてインストールするには、以下を実行します。
# make
# make install


BINDのユーザーとグループの追加

セキュリティ上の理由から、rootユーザーとしてBINDを実行しないでください。

GID 25を使用してnamedグループを作成するには:

# groupadd -g 25 named

プライマリグループがnamedで、ホームディレクトリが/var/named/、かつ有効なシェルを持たないUID 25namedアカウントを作成するには:

# useradd -u 25 -g named -d /var/named -M -s /sbin/nologin named

詳細は、useradd (8)およびgroupadd (8)のマニュアルページを参照してください。

BINDの設定

named.confファイルの設定

ディレクトリを見つけるために、BINDはnamed.confファイルを読み込むために使用します:

# named -V
BIND 9.x.y built with ... '--sysconfdir=/etc' ...

前の例では、BINDは/etc/named.confファイルから構成を読み取ります。

以下は基本的な設定ファイルです:

# Global Configuration Options
options {

    auth-nxdomain yes;
    directory "/var/named";
    notify no;
    empty-zones-enable no;

    # IP addresses and network ranges allowed to query the DNS server:
    allow-query {
        127.0.0.1;
        10.99.1.0/24;
    };

    # IP addresses and network ranges allowed to run recursive queries:
    # (Zones not served by this DNS server)
    allow-recursion {
        127.0.0.1;
        10.1.1.0/24;
    };

    # Forward queries that can not be answered from own zones
    # to these DNS servers:
    forwarders {
        8.8.8.8;
        8.8.4.4;
    };

    # Disable zone transfers
    allow-transfer {
        none;
    };
 };

# Root Servers
# (Required for recursive DNS queries)
zone "." {
   type hint;
   file "named.root";
};

# localhost zone
zone "localhost" {
    type master;
    file "master/localhost.zone";
};

# 127.0.0. zone.
zone "0.0.127.in-addr.arpa" {
    type master;
    file "master/0.0.127.zone";
};

使用されるパラメータとオプションの詳細については、named.conf (5)のマニュアルページを参照してください。

前の例には、Samba AD DNSサーバーを設定するために必要なBIND9_DLZ構成は含まれていません。モジュールの設定方法の詳細については、「BIND9 DLZ DNSバックエンド」を参照してください。

{{#invoke:Message box|imbox}}


DNSルートサーバーリストのダウンロード

  • /var/named/named.rootファイルに最新のDNSルートサーバーの一覧をダウンロードします。
# wget -q -O /var/named/named.root http://www.internic.net/zones/named.root
  • BINDユーザーがルートサーバーのリストを読み取るようにします。
# chown root:named /var/named/named.root
# chmod 640 /var/named/named.root

{{#invoke:Message box|imbox}}

localhostゾーンファイルの作成

  • /var/named/master/localhost.zoneファイルにlocalhost転送ゾーンを作成します。
$TTL 3D

$ORIGIN localhost.

@       1D      IN     SOA     @       root (
                       2013050101      ; serial
                       8H              ; refresh
                       2H              ; retry
                       4W              ; expiry
                       1D              ; minimum
                       )

@       IN      NS      @
        IN      A       127.0.0.1
  • BINDユーザーがゾーン・ファイルを読み取るようにします。
# chown named:named /var/named/master/localhost.zone
# chmod 640 /var/named/master/localhost.zone

0.0.127.in-addr.arpaゾーンファイルの作成

  • /var/named/master/0.0.127.zoneファイルに0.0.127.in-addr.arpaリバースゾーンを作成します。
$TTL 3D

@       IN      SOA     localhost. root.localhost. (
                        2013050101      ; Serial
                        8H              ; Refresh
                        2H              ; Retry
                        4W              ; Expire
                        1D              ; Minimum TTL
                        )

       IN      NS      localhost.

1      IN      PTR     localhost.
  • BINDユーザーがゾーン・ファイルを読み取るようにします。
# chown named:named /var/named/master/0.0.127.zone
# chmod 640 /var/named/master/0.0.127.zone

デーモンの起動

namedユーザーでBINDデーモンをスタートするには:

# named -u named

または、systemctlserviceなどのオペレーティング・システム・ツールを使用して、デーモンを開始することもできます。 詳細については、ディストリビューションののドキュメントを参照してください。

{{#invoke:Message box|imbox}}


ゾーンのテスト

次の例では、ローカルマシン(127.0.0.1)のDNSサービスにクエリを実行します。

localhost正引きゾーンをテストするには:

# host -t A localhost 127.0.0.1
Using domain server:
Name: 127.0.0.1
Address: 127.0.0.1#53
Aliases:
localhost has address 127.0.0.1

0.0.127.in-addr.arpa逆引きゾーンをテストするには:

# host -t PTR 127.0.0.1 127.0.0.1
Using domain server:
Name: 127.0.0.1
Address: 127.0.0.1#53
Aliases:
1.0.0.127.in-addr.arpa domain name pointer localhost.


BIND9_DLZモジュールの設定

詳細については、「BIND9 DLZ DNSバックエンド」を参照してください。