33.5. 動的 DNS 更新の管理
33.5.1. ダイナミック DNS 更新の有効化
動的 DNS 更新は、IdM の新規 DNS ゾーンに対してデフォルトでは無効となっています。動的更新を無効にすると、
ipa-client-install
スクリプトでは、新規クライアントを指定する DNS レコードを追加できません。
注記
動的更新を有効にすると、セキュリティーリスクが発生する可能性があります。ただし、使用環境で動的更新が可能である場合には、この更新方法を使用すると、クライアントのインストールが簡素化されます。
動的更新を有効にするには、以下が必要です。
- 動的更新を許可するように DNS ゾーンを設定する必要があります。
- ローカルクライアントは、動的更新を送信するように設定する必要があります。
33.5.1.1. 動的更新を許可するための DNS ゾーンの設定
Web UI での動的 DNS 更新の有効化
- Network Services タブを開き、DNS サブタブを選択し、その後に DNS Zones セクションを選択します。
図33.16 DNS ゾーンの管理
- ゾーンの全リストからゾーン名をクリックして DNS ゾーンページを開きます。
図33.17 マスターゾーンの編集
- Settings をクリックして DNS ゾーン設定タブに切り替えます。
図33.18 マスターゾーン編集ページの Settings タブ
- Dynamic update フィールドまでスクロールして、値を True に設定します。
図33.19 ダイナミック DNS 更新の有効化
- ページ上部のをクリックして、新しい設定を確認します。
コマンドラインでの動的 DNS 更新の有効化
コマンドラインから DNS ゾーンへの動的な更新を可能にするには、
--dynamic-update=TRUE
オプションを指定して ipa dnszone-mod コマンドを使用します。以下に例を示します。
[user@server ~]$ ipa dnszone-mod server.example.com --dynamic-update=TRUE
33.5.1.2. 動的更新を送信するためのクライアントの設定
クライアントは、
ipa-client-install
スクリプトで --enable-dns-updates
を使用して、ドメインに登録すると DNS 更新を送信するように自動的に設定されます。
[root@client ~]# ipa-client-install --enable-dns-updates
DNS ゾーンの SOA 設定には、レコードに設定された TTL (Time to Live) 値があります。ただし、動的更新の TTL は、System Security Service Daemon (SSSD) によりローカルシステムで管理されます。動的更新の TTL 値を変更するには、SSSD ファイルを編集して値を設定します。デフォルトは 1200 秒です。
- SSSD 設定ファイルを開きます。
[root@server ~]# vim /etc/sssd/sssd.conf
- IdM ドメインのドメインセクションを検索します。
[domain/ipa.example.com]
- 動的更新がクライアントで有効になっていない場合は、
dyndns_update
を true に設定します。dyndns_update = true
dyndns_ttl
パラメーターを追加または変更して、値を秒単位で設定します。dyndns_ttl = 2400
33.5.2. A/AAAA レコードと PTR レコードの同期
AAA レコードと AAA レコードは、逆引きゾーンで PTR レコードとは別に設定されます。これらのレコードは個別に設定されるため、対応する PTR レコードがない場合は A/AAAA レコードが存在し、その逆も可能です。
PTR 同期が機能するには、以下の DNS 設定が必要になります。
- 正引きおよび逆引きゾーンの両方が IdM サーバーで管理されていること。
- 両方のゾーンで動的更新が有効になっていること。動的更新の有効化については、「ダイナミック DNS 更新の有効化」で説明されています。
- マスターの正引きゾーンおよび逆引きゾーンでは、PTR 同期を有効にする必要があります。
- PTR レコードは、要求しているクライアント名が PTR レコード内の名前と一致する場合にのみ、更新されます。
重要
IdM の Web UI やコマンドラインツールによる変更、または LDAP エントリーを直接編集して変更した場合、PTR レコードは更新されません。DNS サービス自体による変更の場合にのみ、PTR レコードは同期されます。
警告
クライアントシステムは、自身の IP アドレスを更新できます。つまり、危険にさらされたクライアントを使用して IP アドレスを変更すると、PTR レコードの上書きが可能になります。
33.5.2.1. Web UI での PTR レコードの同期設定
PTR レコードの同期は、PTR レコードが存在する逆引き DNS ゾーンではなく、A レコードまたは AAAA レコードが保存されているゾーンで設定する必要があります。
- Network Services タブを開き、DNS サブタブを選択し、その後に DNS Zones セクションを選択します。
図33.20 DNS ゾーンの管理
- ゾーンの全リストからゾーン名をクリックして DNS ゾーンページを開きます。
図33.21 DNS ゾーンの編集
- Settings をクリックして DNS ゾーン設定タブに切り替えます。
図33.22 マスターゾーン編集ページの Settings タブ
- Allow PTR sync チェックボックスを選択します。
図33.23 PTR 同期の有効化
- ページ上部のをクリックして、新しい設定を確認します。
33.5.2.2. コマンドラインを使用した PTR レコードの同期設定
コマンドラインを使用して、特定のゾーン、またはすべてのゾーンに対してグローバルに PTR レコードの同期を設定できます。
33.5.2.2.1. 特定のゾーンでの PTR レコードの同期設定
たとえば、
idm.example.com
正引きゾーンに PTR レコード同期を設定するには、次のコマンドを実行します。
- 正引きゾーンの動的更新を有効にします。
# ipa dnszone-mod idm.example.com. --dynamic-update=TRUE
- 正引きゾーンの更新ポリシーを設定します。
# ipa dnszone-mod idm.example.com. --update-policy='grant IDM.EXAMPLE.COM krb5-self * A; grant IDM.EXAMPLE.COM krb5-self * AAAA; grant IDM.EXAMPLE.COM krb5-self * SSHFP;'
- 正引きゾーンの PTR レコード同期を有効にします。
# ipa dnszone-mod idm.example.com. --allow-sync-ptr=True
- 逆引きゾーンの動的更新を有効にします。
# ipa dnszone-mod 2.0.192.in-addr.arpa. --dynamic-update=TRUE
33.5.2.2.2. すべてのゾーンでの PTR レコードの同期のグローバル設定
以下の手順のいずれかを使用して、IdM が管理するすべてのゾーンで PTR 同期を有効にできます。
- すべてのサーバーのゾーンで PTR 同期を同時に有効にするには、次のコマンドを実行します。
# ipa dnsconfig-mod --allow-sync-ptr=true
- サーバーごとの同期を有効にするには、次のコマンドを実行します。
/etc/named.conf
内のdyndb "ipa" "/usr/lib64/bind/ldap.so"
に、sync_ptr yes;
設定を追加します。dyndb "ipa" "/usr/lib64/bind/ldap.so" { ... sync_ptr yes; };
- IdM を再起動します。
# ipactl restart
- DNS サービスがインストールされている各 IdM サーバーでこの手順を繰り返します。
33.5.3. DNS 動的更新ポリシーの更新
IdM サーバーが管理する DNS ドメインは、RFC 3007 に従って DNS 動的更新を受け入れることができます。[4].
特定のクライアントが修正可能なレコードを判断するルールは、
/etc/named.conf
ファイルの 更新ポリシー
文と同じ構文に従います。動的更新ポリシーの詳細は、BIND 9 のドキュメント を参照してください。
DNS ゾーンで動的 DNS 更新が無効になっていると、動的更新ポリシーステートメントを反映せずに、すべての DNS 更新が拒否されることに注意してください。動的 DNS 更新を有効にする方法は、「ダイナミック DNS 更新の有効化」 を参照してください。
Web UI での DNS 更新ポリシーの更新
- Network Services タブを開き、DNS サブタブを選択し、その後に DNS Zones セクションを選択します。
図33.24 DNS ゾーンの管理
- ゾーンの全リストからゾーン名をクリックして DNS ゾーンページを開きます。
図33.25 DNS ゾーンの編集
- Settings をクリックして DNS ゾーン設定タブに切り替えます。
図33.26 マスターゾーン編集ページの Settings タブ
- BIND 更新ポリシー テキストボックスに、セミコロンで区切ったリストで必要な更新ポリシーを設定します。
図33.27 DNS 更新ポリシーの設定
- DNS ゾーンページの上部にあるをクリックして、新しい設定を確定します。
コマンドラインでの DNS 更新ポリシーの更新
コマンドラインから DNS 更新ポリシーを設定するには、
--update-policy
オプションを使用して、そのオプションの後にくる文でアクセス制御ルールを追加します。以下に例を示します。
$ ipa dnszone-mod zone.example.com --update-policy "grant EXAMPLE.COM krb5-self * A; grant EXAMPLE.COM krb5-self * AAAA; grant EXAMPLE.COM krb5-self * SSHFP;"