第2章 IdM での DNS ゾーンの管理

Identity Management (IdM) 管理者は、IdM DNS ゾーンの動作を管理できます。本章では、以下のトピックおよび手順を説明します。

前提条件

2.1. サポート対象の DNS ゾーンタイプ

Identity Management (IdM) は、2 種類の DNS ゾーン (primary および forward) をサポートします。本セクションでは、この 2 種類のゾーンについて、また DNS 転送のシナリオ例を説明します。

注記

本ガイドでは、ゾーンタイプには BIND の用語を使用し、Microsoft Windows DNS で使用する用語とは異なります。BIND のプライマリーゾーンは、Microsoft Windows DNS の 正引きルックアップゾーン逆引きルックアップゾーン と同じ目的で使用されます。BIND の正引きゾーンは、Microsoft Windows DNS の 条件付きフォワーダー と同じ目的で使用されます。

プライマリー DNS ゾーン

プライマリー DNS ゾーンには、権威 DNS データが含まれ、DNS を動的に更新できます。この動作は、標準 BIND 設定の type master 設定と同じです。プライマリーゾーンは、ipa dnszone-* コマンドを使用して管理できます。

標準 DNS ルールに準拠するには、プライマリーゾーンすべてに start of authority (SOA) と nameserver (NS) レコードを含める必要があります。IdM では、DNS ゾーンの作成時にこれらのレコードが自動的に生成されますが、NS レコードを親ゾーンに手動でコピーして適切な委譲を作成する必要があります。

標準の BIND の動作に合わせて、権威サーバーではない名前のクエリーは、他の DNS サーバーに転送されます。DNS サーバー (別称: フォワーダー) は、クエリーに対して権威がある場合と、ない場合があります。

例2.1 DNS 転送のシナリオ例

IdM サーバーには test.example. プライマリーゾーンが含まれています。このゾーンには、sub.test.example. 名前の NS 委譲レコードが含まれます。さらに、test.example. ゾーンは、sub.text.example サブゾーンのフォワーダー IP アドレス 192.0.2.254 で設定されます。

クライアントが nonexistent.test.example. の名前をクエリーすると、NXDomain の応答を受け取りますが、IdM サーバーはこの名前に対して権威があるため、転送は発生しません。

反対に、host1.sub.test.example. の名前をクエリーすると、IdM サーバーはこの名前に対して権威がないので、設定済みのフォワーダー (192.0.2.254) に転送されます。

正引き DNS ゾーン

IdM の観点からは、正引き DNS ゾーンには権威データは含まれません。実際、正引きの「ゾーン」には、通常以下情報 2 つのみが含まれます。

  • ドメイン名
  • ドメインに関連付けられた DNS サーバーの IP アドレス

定義済みのドメインに所属する名前のクエリーはすべて、指定の IP アドレスに転送されます。この動作は、標準 BIND 設定の type forward 設定と同じです。正引きゾーンは、ipa dnsforwardzone-* コマンドを使用して管理できます。

正引き DNS ゾーンは、IdM-Active Directory (AD) 信頼のコンテキストで特に便利です。IdM DNS サーバーが idm.example.com ゾーンに対して、AD DNS サーバーが ad.example.com ゾーンに対して権威がある場合には、ad.example.comidm.example.com プライマリーゾーンの DNS 正引きゾーンになります。つまり、IP アドレスが somehost.ad.example.com の IdM クライアントからクエリーが送信されると、ad.example.com IdM DNS 正引きゾーンに指定の AD ドメインコントローラーに転送されます。

2.2. IdM Web UI でのプライマリー DNS ゾーンの追加

本セクションでは、Identity Management (IdM) Web UI を使用してプライマリー DNS ゾーンを追加する方法を説明します。

前提条件

  • IdM 管理者としてログインしている。

手順

  1. IdM Web UI で、Network ServicesDNS → DNS Zones の順にクリックします。

    図2.1 IdM DNS プライマリーゾーンの管理

    ユーザーが Network Services タブに移動し、DNS サブメニューから DNS ゾーンを選択していることを示すスクリーンショット。
  2. すべてのゾーン一覧の上部にある 追加 をクリックします。
  3. ゾーン名を指定します。

    図2.2 新しい IdM プライマリーゾーンの入力

    ユーザーが「Add DNS Zone」ポップアップウィンドウのゾーン名のフィールドに zone.example.com. などのゾーン名を入力したことを示すスクリーンショット。
  4. 追加 をクリックします。

2.3. IdM CLI でのプライマリー DNS ゾーンの追加

本セクションでは、Identity Management (IdM) コマンドラインインターフェース (CLI) でプライマリー DNS ゾーンを追加する方法を説明します。

前提条件

  • IdM 管理者としてログインしている。

手順

  • ipa dnszone-add コマンドは、新しいゾーンを DNS ドメインに追加します。新しいゾーンを追加するには、新しいサブドメイン名を指定する必要があります。サブドメイン名を直接指定するには、以下のコマンドを実行します。

    $ ipa dnszone-add newzone.idm.example.com

    ipa dnszone-add に名前を指定しない場合には、スクリプトにより自動的に名前を求めるプロンプトが表示されます。

関連情報

  • ipa dnszone-add コマンドでは、さまざまなコマンドラインオプションも使用できます。このオプションの完全な一覧を表示するには、ipa dnszone-add --help コマンドを実行します。

2.4. IdM Web UI でのプライマリー DNS ゾーンの削除

本セクションでは、IdM Web UI を使用して、Identity Management (IdM) からプライマリー DNS ゾーンを削除する方法を説明します。

前提条件

  • IdM 管理者としてログインしている。

手順

  1. IdM Web UI で、Network ServicesDNS → DNS Zones の順にクリックします。
  2. ゾーン名の横にあるチェックボックスを選択し、削除 をクリックします。

    図2.3 プライマリー DNS ゾーンの削除

    「DNS Zones」ページのスクリーンショット。この表では、DNS ゾーンが「Zone name」および「Status」別に整理されています。 "zone.example.com." の 2 番目のエントリーの横にあるチェックボックスにチェックが入っており、上部の「Delete」ボタンが強調表示されています。
  3. DNS ゾーンの削除 ダイアログウィンドウで、選択したゾーンの削除を確定します。

2.5. IdM CLI でのプライマリー DNS ゾーンの削除

本セクションでは、IdM コマンドラインインターフェース (CLI) を使用して、Identity Management (IdM) からプライマリー DNS ゾーンを削除する方法を説明します。

前提条件

  • IdM 管理者としてログインしている。

手順

  • プライマリー DNS ゾーンを削除するには、ipa dnszone-del コマンドの後に、削除するゾーンの名前を入力します。以下に例を示します。

    $ ipa dnszone-del idm.example.com

2.6. DNS 設定の優先順位

多くの DNS 設定オプションは、3 つの異なるレベルで設定できます。優先度は、レベルごとに異なります。

ゾーン固有の設定
IdM に定義されている特定のゾーンに固有の設定は、優先度が最も高いレベルです。ipa dnszone-*ipa dnsforwardzone-* コマンドを使用してゾーン固有の設定を管理できます。
グローバル DNS 設定
ゾーン固有の設定が定義されていない場合は、IdM は LDAP に保存されているグローバル DNS 設定を使用します。グローバル DNS 設定は、ipa dnsconfig-* コマンドを使用して管理できます。グローバル DNS 設定で定義したオプションは、すべての IdM DNS サーバーに適用されます。
/etc/named.confの設定

IdM DNS サーバーごとに /etc/named.conf ファイルで定義されている設定の優先度は、最も低くなります。これは各サーバーに固有のものであり、手動で編集する必要があります。

/etc/named.conf ファイルを使用するのは通常、ローカル DNS キャッシュへの DNS 転送を指定する場合のみです。他のオプションは、上記のゾーン固有の設定と、グローバル DNS 設定のコマンドを使用して管理します

DNS オプションは、同時に複数のレベルで設定できます。このような場合に、最も優先度が高い設定は、レベルが低い設定よりも優先されます。

2.7. プライマリー IdM DNS ゾーンの設定属性

Identity Management (IdM) は、更新期間、転送設定、キャッシュ設定など、特定のデフォルト設定を指定して新しいゾーンを作成します。IdM DNS ゾーン属性 に、デフォルトのゾーン設定属性がありますが、これは、以下のオプションのいずれかを使用して変更できます。

ここではゾーンの実際の情報を設定するほか、DNS サーバーが start of authority (SOA) レコードエントリーを処理する方法と、DNS ネームサーバーからの記録を更新する方法を定義します。

表2.1 IdM DNS ゾーン属性

属性コマンドラインオプション説明

権威ネームサーバー

--name-server

プライマリー DNS ネームサーバーのドメイン名 (別称: SOA MNAME) を設定します。

デフォルトでは、各 IdM サーバーは SOA MNAME フィールドで自己アドバタイズします。そのため、--name-server を使用して LDAP に保存されている値は無視されます。

管理者の電子メールアドレス

--admin-email

ゾーン管理者が使用する電子メールアドレスを設定します。デフォルトでは、ホストの root アカウントになります。

SOA serial

--serial

SOA レコードにシリアル番号を設定します。IdM ではバージョン番号が自動的に設定され、この番号のユーザーによる変更は想定されていません。

SOA refresh

--refresh

セカンダリー DNS サーバーがプライマリ DNS サーバーから更新を要求するまでの待機時間を秒単位で設定します。

SOA retry

--retry

失敗した更新操作を再試行するまでに待機する時間を秒単位で設定します。

SOA expire

--expire

セカンダリー DNS サーバーが操作の試行を終了するまでに、更新操作を実行する時間を秒単位で設定します。

SOA minimum

--minimum

RFC 2308 に準拠し、ネガティブキャッシュの TTL (TTL) 値を秒単位で設定します。

SOA time to live

--ttl

ゾーン apex のレコードの TTL を秒単位で設定します。たとえば、example.com ゾーンでは、名前が example.com の全レコード (A、NS または SOA) は設定されますが、test.example.com などの他のドメイン名には影響はありません。

デフォルトの TTL

--default-ttl

これまでに個別の Time To Live (TTL) 値が設定されたことのないゾーンで、すべての値のネガティブキャッシュのデフォルト TTL を秒単位で設定します。変更を有効にするには、すべての IdM DNS サーバーで named-pkcs11 サービスを再起動する必要があります。

BIND 更新ポリシー

--update-policy

DNS ゾーンでクライアントに許可されるパーミッションを設定します。

Dynamic update

--dynamic-update=TRUE|FALSE

クライアントの DNS レコードへの動的更新を有効にします。

false に設定すると、IdM クライアントマシンは IP アドレスを追加または更新できなくなる点に注意してください。

Allow transfer

--allow-transfer=string

指定のゾーンを転送できる IP アドレスまたはネットワーク名のセミコロン区切りの一覧を指定します。

デフォルトでは、ゾーン転送は無効です。デフォルトの --allow-transfer 値は none です。

Allow query

--allow-query

DNS クエリーを発行できる IP アドレスまたはネットワーク名のセミコロン区切りの一覧を指定します。

Allow PTR sync

--allow-sync-ptr=1|0

ゾーンの A または AAAA レコード (正引きレコード) が自動的に PTR (逆引き) レコードと同期されるかどうかを設定します。

Zone forwarder

--forwarder=IP_address

DNS ゾーン向けに特別に設定されたフォワーダーを指定します。これは、IdM ドメインで使用されるグローバルフォワーダーとは別のものです。

複数のフォワーダーを指定する場愛には、オプションを複数回使用します。

Forward policy

--forward-policy=none|only|first

転送ポリシーを指定します。サポート対象のポリシーに関する情報は、「IdM での DNS 転送ポリシー」を参照してください。

2.8. IdM Web UI でのプライマリー DNS ゾーン設定の編集

本セクションでは、IdM Web UI を使用して、プライマリー Identity Management (IdM) DNS の設定属性を編集する方法を説明します。

前提条件

  • IdM 管理者としてログインしている。

手順

  1. IdM Web UI で、Network ServicesDNS → DNS Zones の順にクリックします。

    図2.4 DNS プライマリーゾーンの管理

    ユーザーが Network Services タブに移動し、DNS サブメニューから DNS ゾーンを選択していることを示すスクリーンショット。
  2. DNS ゾーン セクションで、全ゾーンの一覧にあるゾーン名をクリックし、DNS ゾーンページを開きます。

    図2.5 プライマリーゾーンの編集

    DNS ゾーンページの左側にある DNS ゾーンのエントリーが強調表示されているスクリーンショット
  3. Settings を クリックします。

    図2.6 プライマリーゾーンの編集ページの設定タブ

    プライマリーゾーンの編集ページの設定タブが強調表示されているスクリーンショット
  4. 必要に応じてゾーン設定を変更します。

    利用可能な設定の詳細は、「IdM DNS ゾーン属性」を参照してください。

  5. Save をクリックして、新しい設定を確定します。

    注記

    ゾーンのデフォルトの Time To Live (TTL) を変更する場愛には、全 IdM DNS サーバーでnamed-pkcs11 サービスを再起動して、変更を適用します。他の全設定は、すぐに自動的に有効になります。

2.9. IdM CLI でのプライマリー DNS ゾーンの設定の編集

本セクションでは、Identity Management (IdM) コマンドラインインターフェース (CLI) を使用して、プライマリー DNS ゾーンの設定を編集する方法を説明します。

前提条件

  • IdM 管理者としてログインしている。

手順

  • 既存のプライマリー DNS ゾーンを変更するには、ipa dnszone-mod コマンドを使用します。たとえば、失敗した更新操作を再試行するまでに待機する時間を 1800 秒に設定します。

    $ ipa dnszone-mod --retry 1800

    利用可能な設定と、サポート対象の CLI オプションの詳細は、「IdM DNS ゾーン属性」を参照してください。

    特定の設定で、変更する DNS ゾーンエントリーに値が指定されていない場合は、ipa dnszone-mod コマンドで値を追加します。設定に値がない場合は、このコマンドを実行すると、指定の値に上書きされます。

    注記

    ゾーンのデフォルトの Time To Live (TTL) を変更する場愛には、全 IdM DNS サーバーでnamed-pkcs11 サービスを再起動して、変更を適用します。他の全設定は、すぐに自動的に有効になります。

関連情報

  • ipa dnszone-mod とそのオプションの詳細は、ipa dnszone-mod --help コマンドを実行します。

2.10. IdM でのゾーン転送

本セクションでは、統合 DNS がある Identity Management (IdM) デプロイメントで、ゾーン転送がどのように機能するかを説明します。

ネームサーバーは、ゾーンの権威データを保持します。DNS ゾーン zone A に権威のある DNS サーバーでゾーンに変更を加えると、zone A 以外にある IdM DNS ドメインの他のネームサーバーに変更を配信する必要があります。ゾーン転送 では、別のサーバーにリソースレコードがすべてコピーします。

重要

IdM 統合 DNS には、複数のサーバーで同時に記述できます。IdM ゾーンの Start of Authority (SOA) シリアル番号は、個別の IdM DNS サーバーと同期されません。このような理由から、転送予定ゾーン外にある DNS サーバーは、転送予定ゾーン内の特定の DNS サーバー 1 台だけを使用するように設定します。こうすることで、同期されていない SOA シリアル番号が原因でゾーン転送が失敗しないようにします。

IdM は、RFC 5936 (AXFR) および RFC 1995 (IXFR) 標準に準拠するゾーン転送をサポートします。

関連情報

2.11. IdM Web UI でゾーン転送の有効化

本セクションでは、IdM Web UI を使用して、Identity Management (IdM) でゾーン転送を有効にする方法を説明します。

前提条件

  • IdM 管理者としてログインしている。

手順

  1. IdM Web UI で、Network ServicesDNS → DNS Zones の順にクリックします。
  2. Settings を クリックします。
  3. Allow transfer で、ゾーンレコードを転送するネームサーバーを指定します。

    図2.7 ゾーン転送の有効化

    「Allow transfer」のポップアップウィンドウのスクリーンショット。それぞれに異なる IP アドレスを持つサーバーに対して 3 つのフィールドがあります。「Add」ボタンは、ウィンドウの下部にあります。
  4. DNS ゾーンページの上部にある Save をクリックして、新しい設定を確定します。

2.12. IdM CLI でのゾーン転送の有効化

本セクションでは、IdM コマンドラインインターフェース (CLI) を使用して、Identity Management (IdM) でゾーン転送を有効にする方法を説明します。

前提条件

  • IdM 管理者としてログインしている。
  • セカンダリー DNS サーバーへの root アクセスがある。

手順

  • BIND サービスでゾーン転送を有効にするには、ipa dnszone-mod コマンドを入力し、ゾーンレコードの転送先となる転送予定ゾーンに含まれないサーバー名の一覧を --allow-transfer オプションを使用して指定します。以下に例を示します。

    $ ipa dnszone-mod --allow-transfer=192.0.2.1;198.51.100.1;203.0.113.1 idm.example.com

検証手順

  1. ゾーン転送が有効な DNS サーバーの 1 つに SSH 接続します。

    $ ssh 192.0.2.1
  2. dig ユーティリティーなどのツールを使用して、IdM DNS ゾーンを転送します。

    # dig @ipa-server zone_name AXFR

コマンドでエラーが返されない場合は、zone_name のゾーン転送が正常に有効化されています。

2.13. 関連情報