Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
33.10. 外部 DNS の使用時の DNS レコードのシステム的な更新
外部 DNS を使用する場合には、Identity Management は、トポロジーの変更後に DNS レコードを自動的に更新しません。以下の手順では、外部 DNS サービスが管理する DNS レコードを体系的に更新する方法を説明します。これにより、手動の DNS 更新が必要なくなります。
基本的な概要は、「Identity Management で外部 DNS の更新」 を参照してください。
手順および例は、以下を参照してください。
- GUI を使用して外部 DNS レコードを管理する場合は 「GUI: 外部 DNS レコードの更新」
nsupdate
ユーティリティーを使用して外部 DNS レコードを管理する場合: 「コマンドライン:nsupdate
を使用した外部 DNS レコードの更新」
33.10.1. Identity Management で外部 DNS の更新
DNS レコードを更新すると、古い DNS レコードまたは無効な DNS レコードが削除され、新しいレコードが追加されます。
トポロジーの変更後に、DNS レコードを更新する必要があります。以下に例を示します。
- レプリカのインストールまたはアンインストール後
- Identity Management サーバーに CA、DNS、KRA、または Active Directory の信頼をインストールした後
33.10.2. GUI: 外部 DNS レコードの更新
- 更新が必要なレコードを表示します。ipa dns-update-system-records --dry-run コマンドを使用します。
$ ipa dns-update-system-records --dry-run IPA DNS records: _kerberos-master._tcp.example.com. 86400 IN SRV 0 100 88 ipa.example.com. _kerberos-master._udp.example.com. 86400 IN SRV 0 100 88 ipa.example.com. [... output truncated ...]
- 外部 DNS GUI を使用して、レコードを更新します。
33.10.3. コマンドライン: nsupdate
を使用した外部 DNS レコードの更新
本セクションでは、
nsupdate
ユーティリティーを使用して外部 DNS レコードを手動で更新する方法を説明します。スクリプトでこのセクションのコマンドを使用して、プロセスを自動化することもできます。
nsupdate
の DNS レコードでファイルの生成
--out
を指定して ipa dns-update-system-records --dry-run コマンドを実行します。このオプションは、生成するファイルのパスを指定します。$ ipa dns-update-system-records --dry-run --out dns_records_file.nsupdate IPA DNS records: _kerberos-master._tcp.example.com. 86400 IN SRV 0 100 88 ipa.example.com. _kerberos-master._udp.example.com. 86400 IN SRV 0 100 88 ipa.example.com. [... output truncated ...]
生成されたファイルには、nsupdate
ユーティリティーが許可する形式で、必要な DNS レコードが含まれます。- 生成されるレコードは、以下に依存します。
- レコードを更新するゾーンの自動検出
- ゾーンの権威サーバーの自動検出
標準以外の DNS 設定を使用しているか、ゾーンの委譲がない場合は、nsupdate
が正しいゾーンとサーバーを見つけられない可能性があります。この場合は、生成されるファイルの先頭に以下のオプションを追加します。server
は、nsupdate
がレコードを送信する信頼できる DNS サーバーのサーバー名またはポートを指定します。zone
はnsupdate
がレコードを配置するゾーンの名前を指定します。
以下に例を示します。$ cat dns_records_file.nsupdate zone example.com. server 192.0.2.1 ; IPA DNS records update delete _kerberos-master._tcp.example.com. SRV update add _kerberos-master._tcp.example.com. 86400 IN SRV 0 100 88 ipa.example.com. [... output truncated ...]
ネームサーバーへの動的 DNS 更新要求の送信
nsupdate
を使用して要求を送信する場合は、要求を適切にセキュリティー保護してください。以下のメカニズムを使用して、要求を保護できます。
- Transaction Signature (TSIG) プロトコル
- TSIG を使用すると、共有キーで
nsupdate
を使用できます。手順33.1「TSIG を使用したnsupdate
要求のセキュアな送信」を参照してください。 - TSIG の GSS アルゴリズム (GSS-TSIG)
- GSS-TSIG は、GSS-API インターフェイスを使用して秘密の TSIG 鍵を取得します。GSS-TSIG は、TSIG プロトコルの拡張機能です。手順33.2「GSS-TSIG を使用した
nsupdate
要求のセキュアな送信」を参照してください。
手順33.1 TSIG を使用した nsupdate
要求のセキュアな送信
- 以下の前提条件を満たしていることを確認します。
nsupdate
を実行し、以下のいずれかのオプションを使用して共有シークレットを指定します。-k
: TSIG 認証キーを指定します。$ nsupdate -k tsig_key.file dns_records_file.nsupdate
-y
: 鍵の名前と Base64 でエンコードされた共有秘密鍵から署名を生成します。$ nsupdate -y algorithm:keyname:secret dns_records_file.nsupdate
手順33.2 GSS-TSIG を使用した nsupdate
要求のセキュアな送信
- 以下の前提条件を満たしていることを確認します。注記この手順では、Kerberos V5 プロトコルが GSS-API のテクノロジーとして使用されていることを前提としています。
- DNS 更新要求を送信し、レコードを更新できるプリンシパルで認証し、
-g
オプションでnsupdate
を実行して GSS-TSIG モードを有効にします。$ kinit principal_allowed_to_update_records@REALM $ nsupdate -g dns_records_file.nsupdate