Windows Server
 Computer >> コンピューター >  >> システム >> Windows Server

Windowsでローカルグループポリシー設定を初期化(リセット)する方法

グループポリシーオブジェクト(GPO)は、Windowsのユーザー設定やシステム設定を構成するための主要ツールの一つです。コンピューターに適用されるGPOには、ローカルマシン上で構成される「ローカルGPO」と、Active Directoryドメインに参加している場合に適用される「ドメインGPO」の2種類があります。しかし、一部のGPO設定を誤って構成すると、さまざまな問題が発生する可能性があります。たとえば、USBデバイスや共有プリンター・共有フォルダーへの接続ブロック、Windows Defenderファイアウォールのルールによるネットワークアクセス制限、SRPポリシーやAppLockerによるアプリケーションのインストール・実行禁止、さらにはローカルログオンやリモートログオンの制限などが挙げられます。

ローカルでコンピューターにログオンできない場合や、どのGPO設定が問題を引き起こしているのか特定できない場合は、スクリプトを使ってグループポリシー設定を初期状態にリセットする必要があります。「クリーン」な状態では、グループポリシーの設定は一切構成されていません。

本記事では、ローカルおよびドメインのグループポリシー設定をデフォルト値に戻すための複数の方法をご紹介します。このガイドは、Windows 7からWindows 10までのすべてのサポート対象Windowsバージョン、およびすべてのバージョンのWindows Server(2008/R2、2012/R2、2016、2019)で利用できます。

gpedit.mscを使ってローカルグループポリシーエディターの設定を初期化する方法

この方法では、ローカルグループポリシーエディター(gpedit.msc)のGUIを使用して、構成済みのポリシー設定をすべて無効化します。なお、ローカルGPOのグラフィカルエディターは、Windows 10のPro、Enterprise、Educationエディションでのみ利用可能です。

ヒント: WindowsのHomeエディションには、ローカルグループポリシーエディター(gpedit.msc)が搭載されていません。

gpedit.msc MMCスナップインを起動し、「すべての設定」セクション(ローカル コンピューター ポリシー → コンピューターの構成 → 管理用テンプレート)に移動します。このセクションには、ローカル管理用テンプレートGPOで構成可能なすべての設定が一覧表示されています。「状態」列で並べ替えを行い、「有効」または「無効」になっている構成済みポリシーをすべて見つけます。これらを「未構成」の状態に切り替えることで、すべてまたは一部のポリシーを無効化できます。

現在のローカルGPO設定のバックアップが必要な場合は、Security Compliance Managerに付属するLGPO.exeツールを使用すると便利です。

同様の手順をユーザーの構成セクションでも実行します。これにより、管理用テンプレートGPO内のすべての設定を無効化できます。

ヒント: 適用されているローカルおよびドメインのポリシー設定の一覧は、標準搭載のGPResultツールを使えば、見やすいHTMLレポート形式で取得できます。
gpresult /h c:\PS\GPRreport.html

上記の方法は、最も単純なケースに適したリセット方法です。しかし、GPOの誤った構成によっては、より深刻な問題が発生することもあります。たとえば、gpedit.mscスナップイン自体や任意のプログラム・アプリが起動できなくなる、管理者権限を失う、ローカルログオンが制限されるといったケースです。こうした場合には、コンピューターのローカルファイルに保存されたGPO設定を直接リセットする必要があります。

Registry.polファイルとは?

Windowsのグループポリシーアーキテクチャは、特別なRegistry.polファイルに基づいています。これらのファイルには、構成済みのGPO設定に対応するレジストリ設定が格納されています。ユーザーポリシーとコンピューターポリシーは、それぞれ別のRegistry.polファイルに保存されます。

  • コンピューター設定(コンピューターの構成セクション):%SystemRoot%\System32\GroupPolicy\Machine\registry.pol
  • ユーザー設定(ユーザーの構成セクション):%SystemRoot%\System32\GroupPolicy\User\registry.pol

システム起動時、Windowsは\Machine\Registry.polの内容をシステムレジストリハイブHKEY_LOCAL_MACHINE(HKLM)にインポートします。また、ユーザーログオン時には\User\Registry.polの内容がHKEY_CURRENT_USER(HKCU)ハイブにインポートされます。

ローカルGPOエディターコンソールを開くと、registry.polファイルの内容が読み込まれ、わかりやすいグラフィカルな形式で表示されます。エディターを閉じると、変更内容はRegistry.polファイルに保存されます。その後、gpupdate /forceコマンドの実行やスケジュールされた更新によってグループポリシー設定を更新すると、新しい設定がレジストリに適用されます。

ヒント: Registry.polファイルへの変更は、必ずローカルGPOエディターコンソール経由で行ってください。Registry.polファイルを手動で編集したり、旧バージョンのグループポリシーエディターで編集したりすることは推奨されません。

ローカルGPOの現行設定をすべて削除するには、GroupPolicyフォルダーおよびGroupPolicyUsersフォルダー内のRegistry.polファイルを削除する必要があります。

Windows 10 / Windows Server 2016でローカルグループポリシー設定を一括リセットする方法

現在適用されているすべてのローカルグループポリシー設定を強制的にリセットするには、Registry.polファイルを削除します。ポリシー構成ファイルが格納されているディレクトリ自体を完全に削除してもかまいません。管理者権限のコマンドプロンプトで以下のコマンドを実行してください。

RD /S /Q "%WinDir%\System32\GroupPolicyUsers"
RD /S /Q "%WinDir%\System32\GroupPolicy"

なお、Windows 10 2004以降ではRD.exeコマンドが廃止されているため、代わりにRMDIR.exeコマンドを使用してディレクトリを削除してください。

次に、クリーンなGPOを適用することで、レジストリ内の古いGPO設定をリセットします。

gpupdate /force

これらのコマンドにより、コンピューターの構成とユーザーの構成の両方のセクションにおける、すべてのローカルグループポリシー設定がリセットされます。

gpedit.mscを開き、すべてのポリシーが「未構成」状態になっていることを確認してください。gpedit.mscコンソールを起動すると、削除されたGroupPolicyUsersおよびGroupPolicyフォルダーは、空のRegistry.polファイルとともに自動的に再作成されます。

次回グループポリシーに変更を加える際には、新しい設定内容でRegistry.polファイルが新規作成されます。

Windowsでローカルセキュリティポリシー設定をデフォルトに戻す方法

ローカルセキュリティポリシーは、専用のMMCコンソールであるsecpol.mscで構成されます。コンピューターの問題がローカルセキュリティ設定の厳格化によって引き起こされており、まだWindowsへのローカルアクセスと管理者権限がある場合は、セキュリティポリシー設定をデフォルト値に戻すのが得策です。そのためには、管理者としてcmd.exeを開き、以下のコマンドを実行します。

  • Windows 10、Windows 8.1/8、Windows 7の場合:secedit /configure /cfg %windir%\inf\defltbase.inf /db defltbase.sdb /verbose
  • Windows XPの場合:secedit /configure /cfg %windir%\repair\secsetup.inf /db secsetup.sdb /verbose

その後、コンピューターを再起動してください。

それでもセキュリティポリシーに問題が残る場合は、ローカルセキュリティポリシーデータベースのチェックポイントファイル %windir%\security\database\edb.chk の名前を手動で変更してみてください。

ren %windir%\security\database\edb.chk edb_old.chk

続いて以下のコマンドを実行します。
gpupdate /force

shutdownコマンドでWindowsを再起動します。
Shutdown –f –r –t 0

ログオンせずにローカルGPO設定をリセットする方法

Windowsが起動・ログオンできない、GPSVCサービスが動作していない、ローカル管理者権限がない、コマンドプロンプトを開けない(AppLocker/SRPポリシーによってアプリがブロックされている)といったケースでは、任意のWindowsインストールディスク、USBフラッシュドライブ、またはLiveCDからコンピューターを起動し、インストール済みのWindowsイメージの外側からローカルGPOをリセットしましょう。

  1. 任意のWindowsインストールメディアからコンピューターを起動し、コマンドプロンプトを開きます(Shift+F10);
  2. 次のコマンドを実行します:
    diskpart
  3. コンピューター上のボリューム一覧を表示します:
    list volume
    通常、システムボリュームに割り当てられたドライブ文字はシステムドライブC:\に対応していますが、環境によっては一致しない場合もあります。以降のコマンドは、ご自身のシステムドライブのコンテキスト(例:D:\またはC:\)で実行してください;
  4. diskpartを終了します:
    exit
  5. 以下のコマンドを1つずつ実行します:
    RD /S /Q C:\Windows\System32\GroupPolicy
    RD /S /Q C:\Windows\System32\GroupPolicyUsers
  6. コンピューターを通常モードで再起動し、ローカルグループポリシー設定がデフォルト状態に戻っていることを確認します。

ドメイン適用済みのGPO設定を消去・削除する方法

ここで、ドメイングループポリシーについて少し触れておきます。コンピューターがActive Directoryドメインに参加している場合、その一部の設定はドメインベースのGPOによって決定されます。

適用されたすべてのドメイングループポリシーのregistry.polファイルは、%windir%\System32\GroupPolicy\DataStore\0\SysVol\contoso.com\Policiesディレクトリに保存されています。各ポリシーは、ドメインポリシーのGUID名を持つ個別のフォルダーに格納されます。コンピューターをADドメインから離脱させると、そのコンピューター上のドメイングループポリシーのregistry.polファイルは削除され、起動時にレジストリへ読み込まれなくなります。しかし場合によっては、ドメインから離脱した後もGPO設定がコンピューターに適用され続けることがあります。

これらのregistry.polファイルに対応するレジストリキーは以下の通りです。

  • HKLM\Software\Policies\Microsoft
  • HKCU\Software\Policies\Microsoft
  • HKCU\Software\Microsoft\Windows\CurrentVersion\Group Policy Objects
  • HKCU\Software\Microsoft\Windows\CurrentVersion\Policies

クライアントで使用されたドメインGPOのバージョン履歴は、以下のレジストリキーに記録されています。

  • HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\History\
  • HKCU\Software\Microsoft\Windows\CurrentVersion\Group Policy\History\

適用済みドメインGPOのローカルキャッシュは、C:\ProgramData\Microsoft\Group Policy\Historyに保存されています。このディレクトリ内のファイルは、以下のコマンドで削除できます。

DEL /S /F /Q "%PROGRAMDATA%\Microsoft\Group Policy\History\*.*"

ドメインGPOの設定を強制的に削除する必要がある場合は、%windir%\System32\GroupPolicy\DataStore\0\SysVol\contoso.com\Policiesディレクトリをクリーンアップし、指定したレジストリキーを削除します(削除前に、対象のファイルやレジストリエントリを必ずバックアップしておくことを強くおすすめします!)。

gpupdate /force /boot

注意点: 上記の方法により、各WindowsバージョンでのローカルGPO設定をすべてリセットできます。グループポリシーエディターで行ったすべての設定がリセットされます。ただし、regedit.exeやREGファイル、ドメインのレジストリGPPなど、その他の手段でレジストリに直接加えられた変更はリセットされないのでご注意ください。

  1. Windows 10でローカルグループポリシーエディターを開く5つの簡単な方法

    Windows 10の「ローカルグループポリシーエディター」は、Windowsのさまざまな設定を細かくコントロールできる非常に強力なツールです。システムの構成変更、隠された機能の有効化、Windowsからの通知のブロックなど、幅広い操作が可能になります。このツールを使いこなせば、PCの管理やカスタマイズが格段に楽になります。本記事では、Windows 10でグループポリシーエディターを開くための5つの簡単な方法を、手順付きでわかりやすく解説します。なお、ローカルグループポリシーエディターはWindows 10のPro(プロ)、Enterprise(エンタープライズ)、Education(教育)

  2. Windows 10 Homeでローカルグループポリシーエディター(gpedit.msc)を有効化する3つの方法

    Microsoftは、プロフェッショナル向けのPro版、一般ユーザー向けのHome版、企業向けのEnterprise版、教育機関向けのEducation版など、多彩なWindows 10エディションを提供しています。では、これらの違いは一体どこにあるのでしょうか? 最大の違いは、特定のエディションにのみ搭載されているシステムツールの存在です。たとえば、コンピューターやユーザーの各種設定を管理するためのツール群であるグループポリシーエディターは、Windows 10 Pro・Enterprise・Educationエディションでは利用できますが、Homeエディションには標準で搭載されていません。