ネットワーク ポリシー サーバーのベスト プラクティス

適用対象: Windows Server 2022、Windows Server 2019、Windows Server 2016

このトピックでは、ネットワーク ポリシー サーバー (NPS) の展開と管理に関するベスト プラクティスについて説明します。

次のセクションでは、NPS 展開のさまざまな側面に関するベスト プラクティスを説明します。

会計

NPS のログに関するベスト プラクティスを次に示します。

NPS には、次の 2 種類のアカウンティング (またはログ記録) が用意されています。

  • NPS のイベント ログ。 イベント ログを使用してシステム イベント ログおよびセキュリティ イベントログ内の NPS イベントを記録できます。 このログは、主に接続試行の監査およびトラブルシューティングに使用されます。

  • ユーザー認証およびアカウンティング要求のログ。 ユーザー認証要求およびアカウンティング要求をテキスト形式またはデータベース形式でログ ファイルに記録できます。また、SQL Server 2000 データベースのストアド プロシージャに記録することもできます。 要求ログの記録は、主に接続分析および課金目的のために使用されます。また、セキュリティを調査する手段としても有効で、攻撃者の活動を追跡するのに役立ちます。

NPS のログを最大限に活用するには、次の操作を行います。

  • 最初にログの記録を認証記録とアカウンティング記録の両方に対して有効に設定します。 この設定は、環境に合わせて適切となるように後で変更します。

  • イベント ログがログの管理に十分な容量をもって構成されていることを確認します。

  • ログ ファイルは、損傷したり削除された場合に再作成されないため、すべてのログ ファイルを定期的にバックアップします。

  • 使用量を追跡し、使用分を課金する部門またはユーザーを簡単に特定する 2 種類の目的のために RADIUS クラス属性を使用します。 要求ごとにクラス属性が自動的に生成されますが、アクセス サーバーへの応答が失われた場合や要求が再送された場合に、記録が重複することがあります。 重複した記録はログから削除し、使用量を正確に追跡できるようにする必要があります。

  • ネットワーク アクセス サーバーと RADIUS プロキシ サーバーが、NPS に架空の接続要求メッセージを定期的に送信し、NPS がオンラインであることを確認している場合は、レジストリ設定の ping user-name を使ってください。 この設定は、NPS がこれらの架空の接続要求を処理せずに自動的に拒否するように構成します。 また、NPS では、架空のユーザー名が使用されたトランザクションはどのログ ファイルにも記録されないため、イベント ログの確認が煩雑にならずに済みます。

  • NAS 通知の転送を無効にします。 NPS で構成されたリモート RADIUS サーバー グループのメンバーに対する、ネットワーク アクセス サーバー (NAS) からの起動と停止メッセージの転送を無効にすることができます。 詳細については、「NAS 通知の転送を無効にする」を参照してください。

詳細については、「ネットワーク ポリシー サーバーの会計処理を構成する」を参照してください。

  • SQL Server のログ記録にフェールオーバーと冗長性を持たせるには、SQL Server が実行されている 2 台のコンピューターを別のサブネットに配置します。 SQL Server パブリケーションの作成ウィザードを使用し、2 台のサーバー間のデータベース レプリケーションを設定します。 詳細については、「SQL Server テクニカル ドキュメント」と「SQL Server レプリケーション」を参照してください。

認証

次に、認証についてのヒント集を挙げます。

  • 認証を強化するには、保護された拡張認証プロトコル (PEAP) および拡張認証プロトコル (EAP) などの証明書ベースの認証方法を使用します。 パスワードのみの認証方法は、さまざまな攻撃を受けやすく、安全ではないので使わないでください。 ワイヤレス認証を安全に行うために、PEAP-MS-CHAP v2 の使用をお勧めします。これは、NPS がサーバー証明書を使ってワイヤレス クライアントに ID を証明するのに対し、ユーザーはユーザー名とパスワードで ID を証明するからです。 ワイヤレス展開での NPS の使用についての詳細については、「パスワードベースの 802.1X 認証ワイヤレス アクセスの展開」を参照してください。
  • PEAP および EAP などの証明書ベースの強力な認証方法を使用するには、独自の証明機関 (CA) を Active Directory® 証明書サービス (AD CS) で展開します。これらの認証方法では、NPS 上でサーバー証明書の使用が求められます。 また、独自の CA を使用してコンピューター証明書およびユーザー証明書を登録できます。 NPS とリモート アクセス サーバーへのサーバー証明書の展開の詳細については、「802.1X ワイヤード (有線) とワイヤレス展開用のサーバー証明書の展開」を参照してください。

重要

ネットワーク ポリシー サーバー (NPS) は、パスワード内での拡張 ASCII 文字の使用をサポートしていません。

クライアント コンピューターの構成

次に、クライアント コンピューターの構成についてのヒント集を挙げます。

  • ドメイン メンバーである 802.1X クライアント コンピューターは、すべてグループ ポリシーを使用することで自動的に構成されます。 詳細については、「ワイヤレス アクセスの展開」のトピックの "ワイヤレス ネットワーク (IEEE 802.11) ポリシーの構成" のセクションを参照してください。

インストールに関する提案

NPS のインストールに関するベスト プラクティスを次に示します。

  • NPS をインストールする場合は、各ネットワーク アクセス サーバーを NPS の RADIUS クライアントとして構成する前に、ローカル認証方法でインストールしてテストします。

  • NPS をインストールして構成した後、Windows PowerShell のコマンド Export-NpsConfiguration を使って構成を保存します。 NPS を再構成するたびに、このコマンドで NPS の構成を保存します。

注意事項

  • エクスポートされた NPS 構成ファイルには、RADIUS クライアントおよびリモート RADIUS サーバー グループのメンバーの共有シークレットが暗号化されていない状態で含まれます。 このため、安全な場所にファイルを保存するようにしてください。
  • エクスポート プロセスでは、Microsoft SQL Server のログ設定はエクスポートされたファイルに含まれません。 エクスポートされたファイルを別の NPS にインポートする場合は、新しいサーバーで SQL Server のログを手動で構成する必要があります。

NPS のパフォーマンス チューニング

NPS のパフォーマンス チューニングに関するベスト プラクティスを次に示します。

  • NPS の認証および承認の応答時間を最適化し、ネットワーク トラフィックを最小化するには、NPS をドメイン コントローラー上にインストールします。

  • ユニバーサル プリンシパル名 (UPN) または Windows Server 2008 と Windows Server 2003 ドメインが使用されている場合、NPS ではグローバル カタログをユーザーの認証に使用します。 この処理にかかる時間を最小限にするため、NPS をグローバル カタログ サーバーまたはグローバル カタログ サーバーと同じサブネット上のサーバーのどちらかにインストールします。

  • リモート RADIUS サーバー グループが構成されている場合に、NPS 接続要求ポリシーで [次のリモート RADIUS サーバー グループのサーバーのアカウンティング情報を記録する] チェック ボックスをオフにすると、これらのグループにネットワーク アクセス サーバー (NAS) の起動と停止通知メッセージが送信されます。 そのため、ネットワーク トラフィックが不必要に増大することになります。 このトラフィックを除去するには、[Forward network start and stop notifications to this server](ネットワーク アクセス サーバーの起動と停止の通知をこのサーバーに転送する) チェック ボックスをオフにして、各リモート RADIUS サーバー グループ内の個々のサーバーに対する NAS 通知の転送を無効にします。

NPS を大規模な組織で使用する

大規模な組織で NPS を使用するためのベスト プラクティスを次に示します。

  • ネットワーク ポリシーを使用して特定のグループを含むすべてのグループのアクセスを制限する場合は、アクセスを許可するすべてのユーザーのユニバーサル グループを作成し、このユニバーサル グループのアクセスを許可するネットワーク ポリシーを作成します。 アクセスを許可するユーザーがネットワーク上に多数いる場合は特に、すべてのユーザーを直接ユニバーサル グループに追加しないでください。 代わりに、ユニバーサル グループのメンバーとして個別にグループを作成し、これらのグループにユーザーを追加します。

  • 可能な場合は常に、ユーザーの参照にはユーザー プリンシパル名を使用します。 ドメインのメンバーであるかどうかにかかわらず、ユーザーには同じユーザー プリンシパル名を付けることができます。 こうすることで、ドメインが多数ある組織に必要となる拡張性が実現します。

  • ドメイン コントローラー以外のコンピューターにネットワーク ポリシー サーバー (NPS) をインストールし、NPS が 1 秒あたりに大量の認証要求を受信している場合、NPS とドメイン コントローラー間で許可される同時認証の数を増やすことで NPS のパフォーマンスを向上させることができます。 詳細については、「NPS で処理する同時認証の数を増やす」を参照してください。

セキュリティの問題

セキュリティの問題を軽減するためのベスト プラクティスを次に示します。

NPS をリモートで管理している場合、共有シークレットやパスワードなどの機密情報をプレーンテキストの状態でネットワークを介して送らないようにします。 NPS をリモートで管理するうえで推奨される方法として、次の 2 種類が挙げられます。

  • リモート デスクトップ サービスを使って NPS にアクセスします。 リモート デスクトップ サービスを使うと、クライアントとサーバーの間でデータは送信されません。 サーバーのユーザー インターフェイス (オペレーティング システムのデスクトップおよび NPS コンソール イメージなど) のみがリモート デスクトップ サービス クライアントに送信されます。この方法は、Windows® 10 ではリモート デスクトップ接続と呼ばれます。 クライアントから、キーボードおよびマウスからの入力が送信されますが、この入力はリモート デスクトップ サービスが有効化されたサーバーによってローカルで処理されます。 リモート デスクトップ サービスのユーザーがログオンすると、このユーザーには個々のクライアント セッションのみが表示されます。これらのセッションは個別にサーバーで処理されます。 さらに、リモート デスクトップ接続では、クライアントとサーバーとの間に 128 ビットの暗号化方式が使用されます。

  • 機密情報の暗号化にインターネット プロトコル セキュリティ (IPsec) を使用する。 IPsec を使って、NPS と、NPS の管理に使うリモート クライアント コンピューターとの間の通信を暗号化できます。 サーバーをリモートで管理するには、クライアント コンピューターに Windows 10 用のリモート サーバー管理ツールをインストールします。 インストール後、Microsoft 管理コンソール (MMC) を使って、NPS スナップインをコンソールに追加します。

重要

Windows 10 用のリモート サーバー管理ツールは、製品版の Windows 10 Professional または Windows 10 Enterprise にのみインストールできます。

NPS の詳細については、ネットワーク ポリシー サーバー (NPS) に関するページを参照してください。