「Group Policy」の更新を強制すると、標準の 90〜120 分間の更新サイクルを待つのではなく、新規または変更された設定がすぐに適用されます。管理者は gpupdate /force コマンド、Group Policy Management コンソール、または Invoke-GPUpdate を使った PowerShell で更新を実行できます。/force はすべての GPO を再適用しますが、ドメイン コントローラーに負荷がかかる可能性があるため、緊急の再適用が必要な場合に限って選択的に使用するのが最善です。
防火壁とプロキシ サーバーを担当しているセキュリティ担当者から電話がかかってきたとします。彼は、インターネットにアクセスするユーザー向けに追加のプロキシ サーバーを用意したと伝えます。そこで、すべてのユーザーに影響する新しい GPO を追加し、ユーザーが Internet Explorer を通じて新しいプロキシ サーバーを利用できるようにします。通常、新しい GPO が適用されるまでには 90〜120 分かかりますが、今回は新しい設定を今すぐ適用する必要があり、ユーザーにログオフしてログインし直してもらうこともできません。このような場合は、バックグラウンドでポリシー処理が開始されるまでの通常の待機時間を省略したくなるかもしれません。これはコマンド プロンプト、Group Policy Management コンソール(GPMC)または PowerShell を使って行えます。
GPUupdate とは
グループ ポリシー(Group Policy)は Active Directory の重要な機能であり、管理者がユーザーやコンピューターに幅広い設定を適用できるようにします。グループ ポリシー オブジェクト(GPO)への変更や新しい GPO を適時に適用することは、安全性と生産性の両面で極めて重要です。
そのため、ドメイン メンバー コンピューターが再起動されたとき、またはユーザーがログオンしたときは、グループ ポリシーが自動的に更新(リフレッシュ)されます。さらに、定義されたバックグラウンドの更新間隔でも自動的に更新されます(デフォルトでは、最大 30 分のランダムなオフセットを加えて、90 分ごと)。
ただし、場合によっては、管理者が新しいポリシーを作成したり、既存のポリシーに重要な変更を加えたりしたときなど、GPO の設定をクライアント システムにすぐに適用する必要があります。さらに、ローカル コンピューターで行われた望ましくない変更を元に戻すために、変更されていない(通常は変更されない)GPO を再適用したいという場合もあります。
このドキュメントでは、グループ ポリシーの更新(リフレッシュ)を強制する方法を説明します。
GPUpdate と GPUpdate /force コマンドの比較
gpupdate /force コマンドは、グループ ポリシーを更新するためによく使われるコマンドの1つです。 /force スイッチを使うと、管理者はすべてのポリシー設定を再適用できます。 ただし、/force スイッチを使用すると、特に環境内に多数のグループ ポリシー オブジェクト(GPO)がある場合、ドメイン コントローラー(DC)に大きな負荷がかかることを考慮することが重要です。
テナント規模が大きい、または GPO が多数ある場合は、新しいポリシー設定を反映するために gpupdate を /force スイッチなしで実行するほうが望ましいです。このアプローチでは、変更内容または新しいグループ ポリシーのみが適用されるため、クライアントとドメイン コントローラーの両方にかかる負荷を軽減できます。
グループ ポリシーのベストプラクティス eBook をダウンロード
今すぐダウンロードグループ ポリシーの更新を強制する方法
グループ ポリシーの更新を強制するには、次のいずれかのオプションを使用できます。
- gpupdate /force コマンド
- グループ ポリシー管理コンソール(GPMC)
- PowerShell
前提条件:GPO を適用する前にファイアウォールを設定します
これらのオプションのいずれかを使用して GPO を強制的に再適用する前に、ファイアウォールが該当ポートでの着信ネットワーク トラフィックを許可していることを確認してください(既定では TCP ポート 135)。詳細は Microsoft documentation を参照してください。
コマンド プロンプトを使用してグループ ポリシー更新を強制的に実行する
gpupdate は Active Directory コンピューター上でグループ ポリシーを更新するための Microsoft コマンド シェル コマンドです。すべての Windows OS バージョンに含まれています。
パラメーター /force
引数なしで gpupdate コマンドを実行すると、変更されたポリシー設定と新しい GPO のみが適用されます。しかし、ローカル管理者(またはアカウントを侵害された攻撃者)が行った望ましくない変更を元に戻すためなど、変更されていないすべての GPO も再適用する必要がある場合があります。
その場合は、次のように /force パラメーターを使用する必要があります。
gpupdate /force
このパラメーターを使用して グループ ポリシーの設定 を更新する際は、次の2つの重要な点に注意してください:
- 各ユーザーのマシンに直接出向いて、gpupdate /force コマンドを手動で実行する必要があります。(コンピューターをリモートで更新するには、下記のとおり PowerShell を使用してください。)
- /force スイッチを使用すると、DC とクライアントに大きな負荷がかかる可能性があります。特に環境内の GPO が多数ある場合は注意が必要です。そのような場合は、gpupdate を /force パラメーターなしで実行するのが望ましいです。
追加パラメーター
ユーザーがコンピューターにログオンしている間に gpupdate を実行すると、(もちろんドメイン コントローラーに複製された GPO 情報があることを前提として)Windows に新しい GPO 設定がすぐに反映されます。
ユーザーがログオンしていない場合、Windows XP 以降ではデフォルトで GPO 設定は次回のログオン時にのみ処理されます。しかし適切なスイッチを使用すれば、gpupdate によって、新しく変更された項目が有効になるためにログオフまたは再起動が必要かどうかを判断できます。
- /Logoff – このスイッチを使用すると、ポリシー変更によってユーザーがログオフする必要があるかどうかを判断できます。必要ない場合は新しい設定が直ちに適用されます。必要な場合は、ユーザーは自動的にログオフされ、Group Policy setting はログインし直したときに適用されます。
- /boot – 同様に、Fast Boot が有効になっている場合は、Software Distribution の設定を含む GPO を適用するには再起動が必要です。gpupdate を /boot スイッチ付きで実行すると、ポリシーに再起動を要するものがあるかどうかを確認し、必要に応じてコンピューターを自動的に再起動します。更新された GPO が再起動を必要としない場合は、GPO 設定が適用され、ユーザーはログオンしたままとなります。
/Logoff と /boot の両方のスイッチは省略可能です。
他にも便利なスイッチ オプションは /force
- /Logoff– グループ ポリシーの設定を更新した後、ユーザーをログオフします。
- /Sync – 前面(起動/ログオン)の処理を同期に変更します。
- /Target - ユーザーのみ、またはコンピューターのみのポリシー設定を更新するかどうかを指定します。既定では、ユーザーとコンピューターの両方のポリシー設定が更新されます。
- /Boot – グループ ポリシーの設定が適用された後、コンピューターを再起動します。
グループ ポリシー管理コンソール(Group Policy Management Console:GPMC)を使用してグループ ポリシーの更新を強制する
Windows のグループ ポリシー更新を強制する2つ目の方法は、グループ ポリシー管理コンソールを使用することです。gpupdate コマンドはすべての OU に対してすべてのポリシーを更新しますが、GPMC では更新を特定の OU に制限するオプションがあります。次の手順を実行してください:
- GPMC(Group Policy Management Console)を開きます
- GPO を OU にリンクします。
- 目的の OU を右クリックし、「Group Policy Update」オプションを選択します。
- 表示された「Force Group Policy Update」ダイアログで、「Yes」をクリックして操作を確認します。
PowerShell を使ってコンピューター上でリモートからグループ ポリシー更新を強制する
グループ ポリシーをリモートで更新するには、PowerShell を使用する必要があります。Windows Server 2012 以降は、次の cmdlet Invoke-GPUpdate を使用して、Windows クライアント コンピューター上でグループ ポリシーのリモート更新を強制できます。PowerShell とグループ ポリシー管理コンソールの両方をインストールしておく必要があります。cmdlet は出力を生成しません。
リモートのグループ ポリシー更新に Involve-GPUpdate を使用する例
この Invoke-GPUpdate cmdlet を使用するもう 1 つの利点は、「RandomDelayInMinutes」オプションにより遅延を調整できることです。すぐに Group Policy の更新を行いたい場合は、下の例のように 0 に設定してください:
Invoke-GPUpdate –Computer LHE-LT-ADAM -RandomDelayInMinutes 0
この例では、「LHE-LT-ADAM」として識別されたコンピューターが、Group Policy の更新を開始した直後にすぐ再起動されました。この cmdlet は出力を生成しません。このパラメーターを使用する唯一の欠点は、ユーザーに cmd 画面のポップアップが表示されることです。
すべてのコンピューターで更新を強制的に実行したい場合は、以下のコードを実行します。これは、ドメインからすべてのコンピューターを取得して変数に格納し、各オブジェクトに対してコマンドを実行します。
$compgpoupd = Get-ADComputer -Filter *
$compgpoupd | ForEach-Object -Process {Invoke-GPUpdate -Computer $_.name -RandomDelayInMinutes 0 -Force}
RandomDelayInMinutes パラメーターを使用する唯一の欠点は、ユーザーに cmd 画面のポップアップが表示されることです。
このコードは、ドメインからすべてのコンピューターを取得し、変数に格納して、各オブジェクトに対してコマンドを実行します。
GPO を適用する前にファイアウォールを構成します
GPMC を開く前に、ファイアウォールが特定のポートへの着信ネットワーク トラフィックを許可していることを確認してください。Windows Server 2012 以降、グループ ポリシー エディターには「 The Group Policy Remote Update Firewall Ports」というスターター GPO が用意されており、リモートのスケジュール タスク管理のために TCP ポート 135 が設定されているかどうかを検証します。
GPO を使用して Windows ファイアウォール(高度なセキュリティ)を有効にするには:
- グループ ポリシー管理のインターフェイスを起動します。
- ナビゲーション ウィンドウで、次を展開します。Forest (YourForestName) => Domains (YourDomainName) => Group Policy Objects: (YourDomainName) => 編集したい GPO を右クリックし、Editを選択します。
- ナビゲーションバーから Group Policy Management Editor を選択し、Computer Configuration => Policies => Windows Settings => Security Settings => Windows Firewall with Advanced Security => Advanced Security for Windows Firewall.
GPO のバックグラウンド リフレッシュ
バックグラウンド リフレッシュの間隔が経過すると、すべての Group Policy クライアントが GPO を処理します。ただし処理するのは、クライアントが最後に要求してから新規になった、または変更された GPO のみです。
「security policy」の設定に対してだけ、特別なバックグラウンド リフレッシュを要求します。これは background security refresh と呼ばれ、すべてのバージョンの Windows Server で有効です。16 時間ごとに、各 Group Policy クライアントが Active Directory に対して、セキュリティ設定を含むすべての GPO(変更されたものだけではありません)を確認し、そのセキュリティ設定を再適用します。これにより、クライアント上でセキュリティ設定が変更された場合(Group Policy エンジンの意図に反して変更された場合でも)、16 時間以内に正しい設定へ自動的に戻されます。
ローカル GPO のバックグラウンド リフレッシュ プロセス
先に述べたとおり、グループ ポリシー(Group Policy)を強制的に更新する必要が生じる主な理由の1つは、ローカル管理者(または攻撃者、あるいはそのアカウントが侵害されている!)が自分のマシン上の設定を変更し、GPOで設定したポリシーを無効化してしまえるためです。こうした変更は、生産性を損なうだけでなく、セキュリティにまで悪影響を及ぼす可能性があります。たとえば、ローカル管理者がUSBドライブを禁止するあなたのGPO設定を上書きしてしまうと、データの窃取とマルウェアの導入の両方が可能になります。
したがって、ローカル管理者権限は本当に必要な場合に限って付与するべきです。一般ユーザーにローカル管理者権限を与えてはいけません。
非セキュリティのグループ ポリシー設定を強制的に再適用すること
前述のとおり、通常のバックグラウンド更新は、新規または変更された GPO にのみ適用されます。しかし、GPO が変更されていなくても、通常のバックグラウンド リフレッシュを変更して特定の設定を再適用することができます。これは、セキュリティに直接関連しないエクスプロイト(exploit)を修正するのに適した方法です。
具体的には、各初期ポリシー処理およびバックグラウンド リフレッシュのたびに、次のグループ ポリシー(Group Policy)の領域について再適用を義務付けるよう選択できます。
- レジストリ(管理用テンプレート)
- Microsoft Edge のメンテナンス
- IP セキュリティ
- EFS 回復ポリシー
- ワイヤレス ポリシー
- ディスク クォータ
- スクリプト
- セキュリティ
- フォルダー リダイレクト
- ソフトウェアのインストール
- 有線ポリシー
Netwrix ができること
グループ ポリシー(Group Policy)は、Windows インフラの設定を管理するための非常に強力な手段です。しかし、それは同時に複雑でもあります。実際、長年にわたる合併・買収、従業員の入れ替わり、技術の変更などが積み重なると、手作業の方法や標準のツールだけで Group Policy を効果的に管理することはほぼ不可能になります。
Netwrix PolicyPak はグループ ポリシー(Group Policy)の管理を簡素化し、GPO を整理して統合できるようにします。その結果、組織はより高速なログイン、高いセキュリティ、より良い稼働率、そして誤った設定の削減を実現できます。
グループ ポリシー管理の簡素化の無料トライアルを申し込む
結論
IT環境全体でグループポリシー(Group Policy)の設定を常に最新に保つことは、生産性、セキュリティ、コンプライアンスなどにとって非常に重要です。GPOの変更は次回の更新(refresh)間隔で自動的に適用されますが、すぐに反映するために更新を強制することもできます。さらに安全のために、ローカル管理者によって行われた望ましくない変更を元に戻す目的で、特定のグループポリシー設定が変更されていない場合でも常に再適用されるようにすることができます。
よくある質問
グループポリシーを更新するには?
グループポリシーを手動で更新するには、管理者は gpupdate /force コマンド、グループポリシー管理コンソール(GMPC)、または PowerShell を使用できます。 /force スイッチにより、管理者はすべてのポリシー設定を再適用できます
gpupdate /force は何を行いますか?
グループ ポリシーは、バックグラウンドの更新スケジュールに従って自動的に更新されます。 ただし、更新や新しいポリシーをより早く有効にする必要がある場合、または組織がローカル管理者によって行われた不適切なポリシー変更を元に戻す必要がある場合もあります。 そのような場合、管理者は /force パラメーター付きの gpupdate コマンドを使用して、グループ ポリシーの更新をすぐに適用できます。
gpupdate /force でグループ ポリシーを更新するまでにどれくらいかかりますか?
強制的にグループ ポリシーの更新を行うのにかかる時間は、適用されるポリシーの数によって異なります。少数のポリシーを更新する場合は数分で済むこともありますが、通常は 90 分の適用時間に加えて、負荷分散のための 30 分の遅延が発生します。
共有する
もっと詳しく
著者について
Jonathan Blackwell
ソフトウェア開発責任者
2012年以降、エンジニアでありイノベーターである Jonathan Blackwell は、エンジニアリングのリーダーシップを通じて Netwrix GroupID を、Active Directory および Azure AD 環境におけるグループとユーザー管理の最前線に押し上げてきました。開発、マーケティング、営業での経験により、Jonathan は Identity 市場と買い手の考え方を深く理解できています。