【Active Directory】グループポリシーの構成・適用・更新

音声で聞く

読む前にこの記事のポイントを音声で確認できます。この音声は本記事をもとにAIツール(NotebookLM)で自動生成したもので、発音や言い回しが不自然な箇所や、内容の誤りが含まれる可能性があります。理解の補助としてご利用ください。

ローカルグループポリシーは、コンピューターごとに「コンピューターの構成」と「ユーザーの構成」のポリシーを設定する仕組みでした。ただし、管理者がまとめて管理することはできず、1台ずつ設定する必要があります。ローカルグループポリシーは 【Windows】ローカルグループポリシーの概要 で紹介しています。

Active Directory のグループポリシーを使うと、ドメインに参加しているコンピューターやユーザーの設定を、管理者が一か所からまとめて構成・管理できます。この記事では、グループポリシーの構成、適用されるタイミング、更新の仕組みを確認します。検証環境は Windows Server 2019 のドメインコントローラ(ドメイン名:hirotanoblog.local)です。

この記事でわかること
  1. GPO と GPMC の基本、既定の2つの GPO
  2. GPO が適用されるタイミング(PC の起動時・ユーザーのログオン時)と処理の順番
  3. 自動更新の間隔と、すぐに反映させる方法(gpupdate、GPMC)

グループポリシーの概要

グループポリシーの設定のまとまりを、グループポリシーオブジェクト(GPO)と呼びます。GPO は Active Directory とドメインコントローラの SYSVOL フォルダーに保存され、ほかのドメインコントローラにもレプリケーションされます。

GPO を作ったり編集したりするには、グループポリシー管理コンソール(GPMC)を使います。GPMC は Windows Server の機能として入っているほか、リモートサーバー管理ツール(RSAT)を入れた Windows クライアントからも使えます。

GPMC を起動する

サーバーマネージャーのメニューから ツール ›› グループ ポリシーの管理 を選ぶと、GPMC が起動します。左のペインには、フォレスト(hirotanoblog.local)の下に「ドメイン」と「サイト」が並んでいます。

ドメインを表示する

「ドメイン」を右クリックし、ドメインの表示 を選びます。表示するドメインを選ぶ画面が開くので、ドメイン名にチェックを入れて「OK」をクリックします。

画面イメージについて

この記事の画面は、実際の画面ではなく、検証時の画面から設定する項目(見るポイント)を抜き出して描いたイメージです。バージョンによって、項目の並びや表記は変わります。

ドメインの表示画面イメージ
ドメイン(D):
1名前☑ hirotanoblog.local
すべて選択(A)すべてクリア(C)2OKキャンセル
図1 ドメインの表示(実際の画面ではなく、操作のポイントを示したイメージです)
No.項目設定内容
1名前表示したいドメイン(hirotanoblog.local)にチェックを入れる
2OKクリックすると、GPMC にドメインの中身が表示される

既定の GPO を確認する

ドメインを表示すると、GPO として最初から「Default Domain Policy」と「Default Domain Controllers Policy」が作られていることがわかります。

グループ ポリシーの管理(GPMC)画面イメージ
グループ ポリシーの管理▾ フォレスト: hirotanoblog.local  ▾ ドメイン1    ▾ hirotanoblog.local        Default Domain Policy2      ▾ Domain Controllers          Default Domain Controllers Policy3      ▾ グループ ポリシー オブジェクト          Default Domain Controllers Policy          Default Domain Policy      › WMI フィルター      › スターター GPO  ▾ サイト    グループ ポリシーの結果
図2 ドメインを表示した GPMC のツリー(実際の画面ではなく、表示のポイントを示したイメージです)
No.表示意味
1hirotanoblog.local の下の Default Domain Policyドメインにリンクされた GPO。ドメイン全体のコンピューターとユーザーに適用される
2Domain Controllers の下の Default Domain Controllers PolicyDomain Controllers OU にリンクされた GPO。ドメインコントローラに適用される
3グループ ポリシー オブジェクトドメインにある GPO の実体の一覧。ここで作った GPO は、ドメインや OU にリンクして初めて適用される

GPO そのものは「グループ ポリシー オブジェクト」の中にあり、ドメインや OU には GPO への「リンク」が置かれています。ドメインや OU の下に見えている GPO は、このリンクです。

グループ ポリシー オブジェクト リンク リンク Default Domain Policy Default Domain Controllers Policy ドメイン hirotanoblog.local ドメイン全体に適用 Domain Controllers (OU) DC だけに適用
図3 GPO の実体とリンクの関係
既定の GPO の扱い

Microsoft は、Default Domain Policy ではパスワード、アカウントロックアウト、Kerberos のポリシー(アカウント ポリシー)だけを設定し、Default Domain Controllers Policy ではユーザー権利と監査のポリシーだけを設定することをベストプラクティスとしています。それ以外の設定は、新しく GPO を作ってリンクするのが基本です。

Default Domain Policy と Default Domain Controllers Policy の中身は 【Active Directory】デフォルトドメインポリシーについて で紹介しています。

GPO は、1か所にだけリンクされるとは限りません。サイト、ドメイン、OU のそれぞれにリンクでき、コンピューターやユーザーには次の順番で処理されます。同じ設定が複数の GPO に入っているときは、後から処理された GPO の値が残ります。

処理の順番 ローカルローカル GPOサイトサイトにリンクドメインドメインにリンクOUOU にリンク 同じ設定が重なったときは、後から処理された(右側の)GPO が優先
図4 GPO が処理される順番

同じ場所に複数の GPO がリンクされているときは、GPMC の「リンクの順序」の番号が小さいものが優先されます。また、上位の GPO のリンクに「強制」を付けると、下位の GPO に上書きされなくなります。

GPO の中身を見る

「グループ ポリシー オブジェクト」の中の Default Domain Policy を右クリックし、編集 を選びます。Default Domain Policy のグループポリシー管理エディターが起動します。

グループ ポリシー管理エディター画面イメージ
Default Domain Policy [AD-1.HIROTANOBLOG.LOCAL] ポリシー1▾ コンピューターの構成    › ポリシー    › 基本設定2▾ ユーザーの構成    › ポリシー    › 基本設定
図5 グループポリシー管理エディター(実際の画面ではなく、表示のポイントを示したイメージです)
No.表示意味
1コンピューターの構成コンピューターに対する設定。PC の起動時と、その後の定期的な更新で適用される
2ユーザーの構成ユーザーに対する設定。ユーザーのログオン時と、その後の定期的な更新で適用される

大きく「コンピューターの構成」と「ユーザーの構成」に分かれる点は、ローカルグループポリシーと同じです。ドメインの GPO では、その下がさらに「ポリシー」と「基本設定」(グループポリシー基本設定)に分かれています。

グループポリシーの適用

GPO は、PC の起動時とユーザーのログオン時に適用されます。ドメインへの参加方法は 【Windows Server 2019】Active Directory ユーザ追加と端末のドメイン参加 で紹介しています。

まず PC を起動すると、PC はドメインコントローラから GPO を取得し、GPO のうち「コンピューターの構成」をもとに OS を設定します。次にユーザーがログオンすると、GPO のうち「ユーザーの構成」をもとに、そのユーザーの環境を設定します。

ドメイン コントローラ コンピューターの構成 ユーザーの構成 ① PC の起動時に適用 ② ユーザーのログオン時に適用 その後も定期的に更新 その後も定期的に更新 ドメイン参加 PC ドメインユーザー GPO の中身
図6 GPO が適用されるタイミング
補足

すべての設定が、後で説明する定期的な更新(バックグラウンドの更新)で反映されるわけではありません。たとえばフォルダーリダイレクトはユーザーのログオン時だけ、ソフトウェアのインストールは PC の起動時とユーザーのログオン時だけ処理されます。こうした設定は、変更してもログオフや再起動をするまで反映されません。

グループポリシーの更新間隔

GPO は PC の起動時とユーザーのログオン時に適用されたあとも、定期的に自動で更新されます。この更新間隔も、グループポリシーで決められています。

Default Domain Policy のグループポリシー管理エディターで、コンピューターの構成 ›› ポリシー ›› 管理用テンプレート ›› システム ›› グループ ポリシー を開くと、次の2つの設定で確認できます。

グループ ポリシー管理エディター画面イメージ
Default Domain Policy [AD-1.HIROTANOBLOG.LOCAL] ポリシー▾ コンピューターの構成  ▾ ポリシー    › ソフトウェアの設定    › Windows の設定    ▾ 管理用テンプレート: ローカル コンピューターから取得したポリシー定義 (ADMX ファイル)      ▾ システム        ▾ グループ ポリシー            グループ ポリシーの低速リンクの検出を構成する [未構成]1            コンピューターのグループ ポリシーの更新間隔を設定する [未構成]2            ドメイン コントローラーのグループ ポリシーの更新間隔を設定する [未構成]            ログオン スクリプトの遅延を構成する [未構成]
図7 更新間隔を決める設定の場所(実際の画面ではなく、表示のポイントを示したイメージです)

どちらも「未構成」なので、既定の間隔で更新されます。設定を開くと、ヘルプに既定の間隔が書かれています。

グループ ポリシーの設定(2つの設定を並べたもの)画面イメージ
コンピューターのグループ ポリシーの更新間隔を設定する
状態◉ 未構成(C)○ 有効(E)○ 無効(D)
サポートされるバージョンWindows 2000 以降
1ヘルプ(既定の動作)バックグラウンドで 90 分に1回、0〜30 分のランダムなずれを加えて更新
ドメイン コントローラーのグループ ポリシーの更新間隔を設定する
状態◉ 未構成(C)○ 有効(E)○ 無効(D)
サポートされるバージョンWindows 2000 以降
2ヘルプ(既定の動作)5 分間隔で更新
図8 更新間隔の設定画面(実際の画面ではなく、ヘルプの内容を要約して示したイメージです)
対象既定の更新間隔設定の場所
ドメインに参加した
コンピューター
90 分ごと+0〜30 分のランダムな時間コンピューターの構成 の「コンピューターのグループ ポリシーの更新間隔を設定する」
ドメインコントローラ5 分ごとコンピューターの構成 の「ドメイン コントローラーのグループ ポリシーの更新間隔を設定する」
ユーザー90 分ごと+0〜30 分のランダムな時間ユーザーの構成 の「ユーザーのグループ ポリシーの更新間隔を設定する」

ランダムな時間を足すのは、たくさんのコンピューターが同じタイミングでドメインコントローラに問い合わせないようにするためです。これらの値は変更できますが、実務で変更しているお客様はあまり見たことがありません。Microsoft も、間隔を短くするとネットワークのトラフィックやドメインコントローラの負荷が増えるため、短くすることは推奨していません。

補足

GPO を変更しても、その変更がクライアントの問い合わせ先のドメインコントローラにレプリケーションされるまでは反映されません。ドメインコントローラが複数あるときは、レプリケーションの時間も考えておく必要があります。

グループポリシーの強制適用

ポリシーを変更したあと、自動更新を待たずにすぐ反映させたいことがあります。その場合は、クライアントで gpupdate を実行するか、GPMC から OU 単位で更新します。

クライアントで gpupdate を実行する

ポリシーを更新したいコンピューターで、コマンドプロンプトから gpupdate を実行します。

gpupdate だけでは、前回から変更されたポリシーだけが適用されます。変更の有無にかかわらず、すべてのポリシーを適用し直したいときは /force を付けて実行します。

コマンドプロンプト画面イメージ
gpupdate
1C:\>gpupdateポリシーを最新の情報に更新しています... コンピューター ポリシーの更新が正常に完了しました。ユーザー ポリシーの更新が正常に完了しました。
gpupdate /force
2C:\>gpupdate /forceポリシーを最新の情報に更新しています... コンピューター ポリシーの更新が正常に完了しました。ユーザー ポリシーの更新が正常に完了しました。
図9 gpupdate の実行結果(実際の画面ではなく、表示内容のポイントを示したイメージです)
No.表示意味
1gpupdate前回から変更されたポリシーだけを適用する。コンピューターとユーザーの両方が更新される
2gpupdate /force変更の有無にかかわらず、すべてのポリシーを適用し直す

よく使うオプションは次のとおりです。

オプション意味
/forceすべてのポリシーを適用し直す
/target:computer
/target:user
コンピューターかユーザーの片方だけを更新する(既定は両方)
/logoff更新後にログオフする。ログオン時だけ処理される設定(フォルダーリダイレクトなど)を反映させるときに使う
/boot更新後に再起動する。起動時だけ処理される設定(コンピューター向けのソフトウェアのインストールなど)を反映させるときに使う

GPMC から OU 単位で更新する

GPMC からは、OU に含まれるコンピューターに対して、まとめてグループポリシーを更新させられます。たとえば Domain Controllers OU のコンピューターを更新したい場合は、Domain Controllers を右クリックし、グループ ポリシーの更新 を選びます。

確認の画面に、OU に含まれるコンピューターの台数(今回は2台)が表示されるので、「はい」をクリックします。

グループ ポリシーの更新を強制画面イメージ
対象Domain Controllers 内のすべてのコンピューター(サブコンテナーを含む)
1台数2 台のコンピューター
2はいいいえヘルプ
図10 更新の確認画面(実際の画面ではなく、操作のポイントを示したイメージです)
No.項目設定内容
1台数更新の対象になるコンピューターの台数。対象の OU が正しいかをここで確かめる
2はいクリックすると、対象のコンピューターに更新の指示が出る

結果の画面に、更新の指示が届いたコンピューターが表示されます。

リモート グループ ポリシーの更新結果画面イメージ
1メッセージ今後 10 分間で、Domain Controllers 内のコンピューターのユーザーとコンピューターのポリシーが更新される
2進行状況 完了 台 (2 / 2)
コンピューター名エラー コードエラーの説明
3成功 (2)
AD-1.hirotanoblog.local
AD-2.hirotanoblog.local
保存閉じるヘルプ
図11 リモート更新の結果(実際の画面ではなく、表示のポイントを示したイメージです)
No.表示意味
1メッセージ更新はすぐではなく、この先 10 分以内に行われる
2完了 台 (2 / 2)(緑のバー)対象の2台すべてに更新の指示が届いた
3成功 (2)指示が成功したコンピューターの一覧。失敗した場合はエラーコードと説明が表示される

このように、GPMC からの更新はすぐには反映されず、最大で 10 分ほど遅れて適用されます。たくさんのコンピューターが一斉に更新してドメインコントローラに負荷をかけないよう、コンピューターごとにランダムな時間をずらして実行されるためです。

リモート更新の前提

GPMC の「グループ ポリシーの更新」や PowerShell の Invoke-GPUpdate によるリモート更新は、対象のコンピューターにタスクを登録して gpupdate を実行させる仕組みです。対象のコンピューターでは、次の Windows ファイアウォールの規則(英語名)で通信を許可しておく必要があります。

  • Remote Scheduled Tasks Management (RPC)
  • Remote Scheduled Tasks Management (RPC-EPMAP)
  • Windows Management Instrumentation (WMI-In)

まとめ

グループポリシーが適用・更新されるタイミングを表にまとめます。

タイミング内容
PC の起動時GPO の「コンピューターの構成」が適用される
ユーザーのログオン時GPO の「ユーザーの構成」が適用される
定期的な更新コンピューターとユーザーは 90 分ごと+0〜30 分、ドメインコントローラは 5 分ごと
gpupdate実行したコンピューターで、変更されたポリシーをすぐに適用する
gpupdate /force実行したコンピューターで、すべてのポリシーを適用し直す
GPMC の
「グループ ポリシーの更新」
OU 内のコンピューターに、10 分以内に更新させる

GPO はドメインや OU にリンクして使い、ローカル、サイト、ドメイン、OU の順に処理されます。変更をすぐ確かめたいときは、クライアントでは gpupdate、まとめて反映させたいときは GPMC から OU 単位で更新すると便利です。

コメント