5.4.2. TSIG 認証を使用した動的 DNS 更新の設定

IdM サーバーが DNS (TSIG) テクノロジーの秘密鍵トランザクション認証を使用するように設定できます。このテクノロジーは、認証に rndc.key キーファイルを使用します。TSIG プロトコルについては RFC2845 に定義されています。

前提条件

  • IdM サーバーがデプロイされ、ホストベースのファイアウォールが正確に設定されている。詳細はLinux ドメイン ID、認証、およびポリシーガイドポート要件 を参照してください。
  • IdM サーバーで root 権限を取得する必要があります。
  • デプロイメントに DNS サービスを提供するように Satellite Server または Capsule Server が設定されていることを確認する。
  • デプロイメントの DNS サービスを管理する Satellite または Capsule のいずれかのベースオペレーティングシステムで DNS 、DHCP および TFTP サービスを設定する必要がある。
  • 応答ファイルのバックアップを作成しておく。応答ファイルが破損した場合に、元の状態に戻せるように、バックアップを使用できます。詳細は、Satellite Server の設定 を参照してください。

手順

TSIG 認証で動的 DNS 更新を設定するには、以下の手順を実行します。

IdM サーバーの DNS ゾーンに対する外部更新の有効化

  1. IdM サーバーで、以下の内容を /etc/named.conf ファイルの先頭に追加します。

    ########################################################################
    
    include "/etc/rndc.key";
    controls  {
    inet _IdM_Server_IP_Address_ port 953 allow { _Satellite_IP_Address_; } keys { "rndc-key"; };
    };
    ########################################################################
  2. named サービスをリロードして、変更を有効にします。

    # systemctl reload named
  3. IdM Web UI で、ネットワークサービス > DNS > DNS ゾーン に移動して、ゾーンの名前をクリックします。設定 タブで、以下の変更を適用します。

    1. BIND update policy (BIND 更新ポリシー) ボックスで以下の内容を追加します。

      grant "rndc-key" zonesub ANY;
    2. Dynamic updateTrue に設定します。
    3. 更新 をクリックして変更を保存します。
  4. IdM サーバーから Satellite Server のベースオペレーティングシステムに /etc/rndc.key ファイルをコピーします。以下のコマンドを入力します。

    # scp /etc/rndc.key root@satellite.example.com:/etc/rndc.key
  5. rndc.key ファイルに適切な所有者、パーミッション、SELinux コンテキストを設定するには、以下のコマンドを入力します。

    # restorecon -v /etc/rndc.key
    # chown -v root:named /etc/rndc.key
    # chmod -v 640 /etc/rndc.key
  6. foreman-proxy ユーザーは、手動で named グループに割り当てます。通常、satellite-installer は foreman-proxy ユーザーが named UNIX グループに所属させますが、今回のシナリオでは、Satellite でユーザーとグループを管理していないので、foreman-proxy ユーザーを named グループに手作業で割り当てる必要があります。

    # usermod -a -G named foreman-proxy
  7. Satellite Server で以下の satellite-installer コマンドを入力して、Satellite が外部の DNS サーバーを使用するように設定します。

    # satellite-installer --scenario satellite \
    --foreman-proxy-dns=true \
    --foreman-proxy-dns-managed=false \
    --foreman-proxy-dns-provider=nsupdate \
    --foreman-proxy-dns-server="IdM_Server_IP_Address" \
    --foreman-proxy-keyfile=/etc/rndc.key \
    --foreman-proxy-dns-ttl=86400

IdM サーバーの DNS ゾーンに対する外部更新のテスト

  1. bind-utils ユーティリティーをインストールします。

    # yum install bind-utils
  2. Satellite Server 上の /etc/rndc.key ファイルのキーが IdM サーバーで使用されているキーファイルと同じであることを確認します。

    key "rndc-key" {
            algorithm hmac-md5;
            secret "secret-key==";
    };
  3. Satellite Server で、ホストのテスト DNS エントリーを作成します。(例: 192.168.25.1 の IdM サーバーに、192.168.25.20 の A レコードを指定した test.example.com ホストなど)

    # echo -e "server 192.168.25.1\n \
    update add test.example.com 3600 IN A 192.168.25.20\n \
    send\n" | nsupdate -k /etc/rndc.key
  4. Satellite Server で、DNS エントリーをテストします。

    # nslookup test.example.com 192.168.25.1
    Server:		192.168.25.1
    Address:	192.168.25.1#53
    
    Name:	test.example.com
    Address: 192.168.25.20
  5. IdM Web UI でエントリーを参照するために、Network Services (ネットワークサービス) > DNS > DNS Zones (DNS ゾーン) に移動します。ゾーンの名前をクリックし、名前でホストを検索します。
  6. 正常に解決されたら、テスト DNS エントリーを削除します。

    # echo -e "server 192.168.25.1\n \
    update delete test.example.com 3600 IN A 192.168.25.20\n \
    send\n" | nsupdate -k /etc/rndc.key
  7. DNS エントリーが削除されたことを確認します。

    # nslookup test.example.com 192.168.25.1

    レコードが正常に削除されている場合は、上記の nslookup コマンドが失敗し、SERVFAIL エラーメッセージを返します。