名前解決ポリシー テーブルを使用して DNSSEC 規則を構成する

この記事では、特定の名前空間に DNS セキュリティ ポリシーを適用するように Windows Server で名前解決ポリシー テーブル (NRPT) を構成する方法について説明します。 NRPT を使用すると、システム管理者は DNSSEC 検証要件を実装し、組織内の重要なドメインの名前解決をセキュリティで保護できます。

Windows Server の名前解決ポリシー テーブル (NRPT) を使用すると、セキュリティ対応 DNS クライアントに名前解決ポリシーを適用できます。 特定の名前空間に対して DNSSEC 検証を要求する NRPT 規則を作成できます。これは、DNS クエリと応答をセキュリティで保護するために不可欠です。 この記事では、グループ ポリシーまたは Windows PowerShell を使用して NRPT を構成する方法について説明します。 NRPT を使用して、使用可能な 4 つのタブのいずれかを選択することで、さまざまな種類のルールを作成できます。 この記事では、DNSSEC 規則についてのみ説明します。

NRPT 名前空間

DNS クライアント サービスは、DNS 名前解決を実行するときに、DNS クエリを送信する前に NRPT を確認します。 DNS クエリが NRPT のエントリと一致する場合、サービスはポリシーの設定に従って処理します。 NRPT エントリと一致しないクエリは通常どおりに処理されます。 NRPT を使用して DNSSEC 検証を適用できます。 この検証は、クエリの DNS 応答に適用されます。 これらの規則が適用される名前空間を指定できます。

次の表に、ポリシーが適用される名前空間を構成するために使用できるオプションを示します。

Option Usage
接尾辞 ポリシーは、 .contoso.com で終わり、子ドメインを含む任意の名前に適用されます。
接頭辞 ポリシーはホスト名にのみ適用されます。 このポリシーは、DNS クエリのホスト名部分が規則で構成されたフラット名と一致する場合にのみトリガーされます。 たとえば、ルールで server1が指定されている場合は、 server1.contoso.comserver1.nwtraders.comなどのクエリに適用されます。
FQDN ポリシーは、指定されたホストにのみ適用されます。 この完全修飾ドメイン名 (FQDN) はドメインの FQDN ではなく、ホスト コンピューターの FQDN です。
サブネット (IPv4) このオプションは、逆 IPv4 参照クエリに適用されるポリシーを構成します。
サブネット (IPv6) このオプションは、IPv6 の逆引き参照クエリに適用されるポリシーを構成します。
任意 このオプションは、既定のポリシーを構成します。

NRPT ルールの処理

NRPT 規則は、ローカル、サイト、ドメイン、または組織単位 (OU) にリンクされたグループ ポリシー オブジェクト (GPO) で構成できます。 通常のグループ ポリシー処理ルールが適用されます。 ローカル GPO、サイトにリンクされた GPO、ドメインにリンクされた GPO、最後に組織単位でリンクされた GPO から始まる。 処理順序の例を次の図に示します。

ローカル、サイトリンク、ドメインリンク、組織単位にリンクされた GPO を含む、グループ ポリシーの NRPT ルールの処理順序を示す図。

同じユーザーまたはコンピューターに適用される複数の GPO に NRPT 規則が存在する場合、規則はマージされ、より一般的な規則よりも個別の規則が優先されます。 たとえば、次の表に示すように、子名前空間に適用される規則は、親名前空間の規則よりも優先されます。

GPO 名 Namespace DNSSEC 対応 検証が必要
既定のドメイン ポリシー contoso.com
NRPT_settings secure.contoso.com

この例では、www.secure.contoso.comなど、secure.contoso.comのサフィックスを持つ DNS クエリに DNSSEC 検証が必要です。 検証には、子ドメイン内のクエリ ( www.corp.secure.contoso.comなど) が含まれます。 ただし、 *.contoso.com*.corp.contoso.comでは検証は必要ありません。 したがって、親ドメインと子ドメインに別の名前解決ポリシーが必要な場合は、子名前空間のポリシーを明示的に作成する必要があります。

Warnung

NRPT 規則は、互いに上書きしません。 同じユーザーまたはコンピューターの同じ名前空間に適用される 2 つの異なる GPO に 2 つの規則が作成されると、競合が発生します。 その結果、どちらのルールも適用されません。 規則が異なる名前空間の同じユーザーまたはコンピューターに適用される場合は、それらのルールがマージされます。 ただし、このルールはローカル グループ ポリシーには適用されません。 NRPT 設定がドメイン グループ ポリシーで構成されている場合、すべてのローカル グループ ポリシー NRPT 設定は無視されます。

NRPT は、名前空間の特定のセグメントの検証を必要とするか、または必要としないように構成できます。 たとえば、条件付きフォワーダーを使用して DNSSEC 検証を無効にすることができます。 この設計を使用すると、FQDN などの特定の名前空間の外部の署名されていないドメインにクライアント コンピューターを誘導する条件付きフォワーダーを実装できます。 転送された名前が組織内の署名済み名前空間内にある場合は、その FQDN に対して明示的に無効にしない限り、検証が必要になることがあります。

たとえば、署名された内部ドメイン ( contoso.com) があり、外部 Web サイト www.contoso.com が署名されていない場合などです。 このシナリオでは、内部ドメインと外部ドメインが異なる権限のあるサーバーを使用します。 条件付きフォワーダーは、名前 www.contoso.comを解決するために使用されます。 クライアント コンピューターが DNSSEC 検証を必要とせずに外部 Web サイトにアクセスできるように、NRPT を次のように構成できます。

名前 条件付きフォワーダー DNSSEC 対応 検証が必要
contoso.com none
www.contoso.com 10.10.10.10

この例では、 contoso.com 名前空間内の他の名前 ( finance.contoso.com など) は、 www.contoso.comの NRPT FQDN 規則と一致しないため、検証が必要です。

NRPT ポリシーのフィルター処理

既定では、ドメインにリンクされた新しいグループ ポリシー オブジェクト (GPO) が認証されたユーザー グループに適用されます。 選択したグループ、ユーザー、およびコンピューターに NRPT ポリシーを適用するには、 セキュリティ フィルターから Authenticated Users グループを削除し、カスタム ユーザー、グループ、またはコンピューターを追加します。

[前提条件]

NRPT を構成するには、次の前提条件が必要です。

  • 管理者グループまたは同等のメンバーシップは、これらの手順を完了するために最低限必要です。
  • グループ ポリシーを使用して NRPT を構成するコンピューターに、グループ ポリシー管理コンソール機能がインストールされている必要があります。
  • NRPT を構成するドメイン内の既存のグループ ポリシー オブジェクト (GPO) を作成または編集する権限が必要です。

NRPT を構成する

名前解決ポリシー テーブル (NRPT) を構成するには、次の手順に従います。 提供されている例は、名前空間 (ゾーン) の DNSSEC 検証を必要とする既存のグループ ポリシー オブジェクト (GPO) に規則を追加する方法を示しています。

NRPT は、グループ ポリシー管理コンソールまたは Windows PowerShell を使用して構成できます。 環境と管理設定に最も適した方法を選択します。

グループ ポリシー管理コンソール (GPMC) を使用して NRPT 規則を構成するには、次の手順に従います。

  1. グループ ポリシー管理機能がインストールされているコンピューターにサインインします。
  2. [サーバー マネージャー] メニューの [ツール] を選択し、[グループ ポリシー管理] を選択して、グループ ポリシー管理コンソールを開きます。
  3. グループ ポリシー管理コンソール ツリーで構成するグループ ポリシー オブジェクト (GPO) に移動します。 GPO を右クリックし、[編集] を選択 します
  4. グループ ポリシー管理エディター ツリーで、Windows 設定>名前解決ポリシー>コンピューターの構成> ポリシーに移動します。
  5. 新しいルールを作成するには、[ ルールの作成] で、ルールが適用される名前空間の一部をドロップダウン リストから選択します。 たとえば、[ サフィックス] を選択して、指定したテキストで終わるすべての名前に適用されるルールを作成します。
  6. ドロップダウン リストから名前空間の種類を選択し、規則が適用される名前空間を入力します。 たとえば、 secure.contoso.com DNS 名前空間内のすべてのデバイスにルールを適用するには、[ サフィックス] を選択し、「 secure.contoso.com」と入力します。
  7. [ この規則で DNSSEC を有効にする ] チェック ボックスをオンにし、[ DNS サーバーによって名前とアドレス データが検証されたことを DNS クライアントに要求する] チェック ボックスをオンにして、DNSSEC 検証を 有効にします。
  8. NRPT のこのセクションの下部にある [ 作成 ] を選択して、ルールを作成します。
  9. 下にスクロールして、[ 名前解決ポリシー テーブル ] セクションで構成済みの規則を表示し、新しいルールが表示されていることを確認します。

現在の NRPT ポリシーを表示する

Get-DnsClientNrptPolicy コマンドレットを使用して、NRPT ポリシーを表示できます。 次の例を参照してください。

PS C:\> Get-DnsClientNrptPolicy -Effective

Namespace                        : .contoso.com
QueryPolicy                      : QueryIPv6Only
SecureNameQueryFallback          : FallbackPrivate
DirectAccessIPsecCARestriction   :
DirectAccessProxyName            :
DirectAccessDnsServers           :
DirectAccessEnabled              : False
DirectAccessProxyType            :
DirectAccessQueryIPsecEncryption :
DirectAccessQueryIPsecRequired   :
NameServers                      :
DnsSecIPsecCARestriction         :
DnsSecQueryIPsecEncryption       :
DnsSecQueryIPsecRequired         : False
DnsSecValidationRequired         : False
NameEncoding                     :

Namespace                        : .secure.contoso.com
QueryPolicy                      : QueryIPv6Only
SecureNameQueryFallback          : FallbackPrivate
DirectAccessIPsecCARestriction   :
DirectAccessProxyName            :
DirectAccessDnsServers           :
DirectAccessEnabled              : False
DirectAccessProxyType            :
DirectAccessQueryIPsecEncryption :
DirectAccessQueryIPsecRequired   :
NameServers                      :
DnsSecIPsecCARestriction         :
DnsSecQueryIPsecEncryption       :
DnsSecQueryIPsecRequired         : False
DnsSecValidationRequired         : True
NameEncoding                     :

Get-DnsClientNrptPolicy コマンドレットは、ローカル コンピューターに適用されるポリシーを取得します。 この例では、出力は DNSSEC 検証が *.secure.contoso.comに必要であり、 *.contoso.comには必要ないことを示しています。