Active Directory で Windows LAPS (ローカル管理者パスワードソリューション) を構成する方法

Windows LAPS を使用してローカル管理者のパスワードを管理する方法

ローカル管理者のパスワード共有の煩わしさに悩まされた経験や、パスワードが古すぎてもはや遺物と化しているマシンを所有していた経験があるなら、Windows LAPS が新たな頼みの綱になるかもしれません。Windows LAPS はパスワード管理を自動化し、AD に安全に保存し、定期的に更新します(Windows 側は必要以上にパスワードを複雑にする必要があるため)。このガイドでは、Microsoft が最近の Windows アップデートでネイティブサポートを組み込んだ今だからこそ、LAPS を適切に設定する方法を詳しく説明します。MSI インストーラーをいじる必要はもうありません。アップデートと設定だけで済みます。ただし、ドメインコントローラーやグループポリシーなど、いくつかの設定は必要ですので、怠けないでください。

基本的に、LAPSを設定すると、30日ごと、またはGPO設定に従ってローカルパスワードがローテーションされ、承認されたユーザーだけがパスワードを確認できます。多数のマシンを管理していて、パスワードリセットやスクリーンショットに古い認証情報が表示されるといった面倒な作業を避けたい場合、非常に便利です。面倒な手続きを踏むことなく、セキュリティを強化するのに効果的な方法です。それでは、実際にLAPSを導入するための手順を見ていきましょう。

Windows 10/11で組み込みのWindows LAPSを修正または有効にする方法

WindowsバージョンがネイティブLAPSをサポートしているかどうかを確認する

何かを試す前に、Windowsが最新のアップデートを実行していることを確認してください。少なくともWindows 11 22H2(KB5025239)またはWindows 10 22H2(KB5025221)が必要です。古いビルドをお使いの場合はネイティブサポートがまだ提供されていないため、従来のMSIパッケージを使い続ける必要があります。正直言って、これは面倒でした。ある環境ではアップデート後に問題なく動作しましたが、別の環境では1、2回の再起動が必要でした。奇妙ですが、Windowsのアップデートは時々不安定になるものです。

Windows を更新し、古い LAPS 設定をクリアする

  • まず、「設定」>「Windows Update」に移動して、最新のパッチをすべて取得します。
  • ドメイン コントローラーはスキーマ拡張をホストするため、すべてのドメイン コントローラーが更新されていることを確認してください。
  • Active Directoryで、すべてのドメインコントローラーに最新のスキーマ拡張が適用されていることを再確認してください。PowerShellを使用して を実行しますUpdate-LapsADSchema。「ローカルエラー」に関するエラーが表示される場合は、一部のDCがまだ準備ができていないことを意味します。
  • LAPSのレガシーコンポーネント(古いMSIインストーラーやレガシーGPOなど)をすべて削除してください。レジストリキーを確認しHKLM\Software\Microsoft\Windows\CurrentVersion\LAPS\State、レガシーエントリがある場合は削除してください。これにより、競合やイベントビューアーに表示される厄介なイベントID 10033または10031エラーを回避できます。

ネイティブLAPS機能をインストールまたは検証する

更新が最新であれば、%systemroot%\PolicyDefinitionsにLAPS用の新しいADMXファイルが表示されます。共有リポジトリからGPOを管理している場合は、 laps.admxを中央ストア(Network GPO Store Location)にコピーしてください。パスワード暗号化やバックアップの有効化などの新しいGPOオプションがgpmc.mscで利用できることを確認してください。

LAPS 用の GPO を構成して設定する

  • 新しい GPO を作成し、それをターゲット コンピューターの OU にリンクします。
  • [コンピューターの構成] > [ポリシー] > [管理用テンプレート] > [システム] > [LAPS]に移動します。
  • パスワード バックアップ ディレクトリの構成( Active Directoryに設定)などのポリシーを有効にし、パスワードの複雑さ、長さ、変更頻度 (既定値は 14 文字、30 日) を構成します。
  • ローカル管理者アカウント名を作成または指定します。デフォルトは「Administrator」です。
  • 保存して閉じ、再起動するか実行してgpupdate /force設定をすぐにプッシュします。

権限の割り当てとアクセス制御の設定

デフォルトでは、ドメイン管理者のメンバーはパスワードを閲覧できますが、権限を限定したい場合もあるでしょう。次のようなPowerShellコマンドを使用します。

Set-LapsADComputerSelfPermission -Identity "OU=Computers, OU=MUN, OU=DE, DC=woshub, DC=com"

読み取りまたはリセット権限を割り当てるセキュリティ グループ (例: MUN-LAPS-Admins ) を作成します。

New-ADGroup MUN-LAPS-Admins -path 'OU=Groups, OU=MUN, OU=DE, DC=woshub, DC=com' -GroupScope local -PassThru –Verbose Add-AdGroupMember -Identity MUN-LAPS-Admins -Members a.morgan, b.krauz $ComputerOU = "OU=Computers, OU=MUN, OU=DE, DC=woshub, DC=com" Set-LapsADReadPasswordPermission –Identity $ComputerOU –AllowedPrincipals MUN-LAPS-Admins Set-LapsADResetPasswordPermission -Identity $ComputerOU -AllowedPrincipals MUN-LAPS-Admins

これにより、特定のユーザーのみがパスワードを確認またはリセットできるため、セキュリティが維持されます。デフォルトではすべてのドメイン管理者がアクセス可能ですが、権限を厳しく設定することをお勧めします。

オンデマンドでパスワードを取得またはローテーションする

設定が完了したら、PowerShell で現在のパスワードを確認できます。以下のコマンドを使用します。

Get-LapsADPassword ComputerName -AsPlainText

例: Get-LapsADPassword mun-pc221 -AsPlainText。現在のパスワードが表示されます。驚くほど簡単です。パスワードをすぐに変更したい場合は、以下を実行してください。

Reset-LapsPassword

これにより、パスワードの変更が即座に開始され、新しいパスワードはADに安全に保存されます。一部のマシンでは、変更を有効にするために再起動、または少なくともGPUpdateが必要になる場合があります。はい、本当に簡単です。余計な手間も、面倒なこともありません。

まとめ

WindowsネイティブのLAPSを動作させるのは、アップデートさえ適用すれば、思ったほど大変ではありません。古い設定をクリーンアップし、スキーマの更新を確認し、GPOを適切に構成し、権限を設定するだけで、準備完了です。パスワードのローテーションはほぼ手間がかからず、PowerShellを使えば簡単にパスワードを取得できるのが利点です。もちろん、特にレガシー環境から移行する場合は、イベントログにLAPS関連のエラーがないか定期的に確認することを忘れないでください。

まとめ

  • Windows が最新のパッチで完全に更新されていることを確認してください。
  • 従来の LAPS コンポーネント、特に古い GPO とレジストリ エントリを削除します。
  • ポリシー定義からネイティブ LAPS 機能をインストールまたは検証します。
  • GPO を構成して、パスワードのローテーション、複雑さ、およびバックアップの場所を管理します。
  • 権限を慎重に設定し、パスワードを表示またはリセットできるユーザーを制限します。
  • PowerShell コマンドを使用して、必要に応じてパスワードを取得またはローテーションします。
  • イベント ログで問題や警告を確認します。

最後に

Windowsのネイティブサポートにより、ローカル管理者のパスワード管理は容易になりましたが、それでも少し設定が必要です。設定さえしてしまえば、付箋やパスワード共有の時代と比べてセキュリティが大幅に向上します。少なくとも今のところは、誰かがパスワードの混乱や延々と続くリセット要求を回避できるようになることを願っています。