削除された Active Directory オブジェクトを復元する方法:完全ガイド

グローバルな認証ディレクトリサービスとして、ITインフラストラクチャーリソースの集中管理を提供するActive Directory(AD)は、最も重要なビジネスアプリケーションの1つです。このため、障害が発生した際、迅速な復旧がサービスのダウンタイムを減少させるために不可欠です。ADには通常、多数のオブジェクトが階層的に編成されており、一部のオブジェクトは他のオブジェクトに依存しています。複雑な階層構造を復旧し、一部のデータを手動で再作成する必要があるため、復旧プロセスには時間がかかることがあります。このブログ記事では、削除されたActive Directoryオブジェクトを復旧する方法を説明します。

Active Directoryオブジェクト復旧の基本

AD復旧プロセスは、統合されたWindows Serverのバックアップユーティリティまたはサポートされている他のサードパーティユーティリティを使用して開始できます。Active Directoryは、主に2つの復旧方法を提供しています:

  • Non-Authoritative Recovery はActive Directoryを復旧するためのデフォルトの方法です。この方法は、バックアップが行われた時点の状態にドメインを戻し、その後に行われたオブジェクトやコンテナーの変更を通常のレプリケーションによって上書きすることを許します。
  • Authoritative Recovery はバックアップからの非権威的な復旧と、その後の権威的な復旧の二つの部分で構成されています。主な違いは、この方法によってディレクトリ全体のオブジェクトとその属性に対する権威的な変更を行うことができる点です。この種類の復旧は、コンピューターアカウント、信頼、グループメンバーシップに影響を与える可能性があります。

適切なAD復旧方法を選択するには、以下を考慮してください:

  • The cause of the failure:オブジェクトの不注意または悪意ある削除や変更が、すべてのドメインコントローラーにレプリケーションされているか、またはVM全体が完全に失敗した場合です。削除/変更の場合は、権威的な復旧が必要です。
  • Roles and functions 失敗したActive Directoryサーバー。

削除されたADオブジェクトを復元するためのネイティブツール

削除されたADオブジェクトは、 Active Directoryユーザーとコンピュータースナップインに常に表示されるとは限りません。削除されたADオブジェクトを持つ Deleted Objects コンテナを見て、特別なツールを使ってのみそれらを復元することができます。 2つのアプローチがあります:Windows Serverに組み込まれているツールを含む、ネイティブのMicrosoftツールを使用してActive Directory(AD)で削除されたオブジェクトを復元するには、Active Directoryリサイクルビンを使用する方法と使用しない方法があります。これらの2つのアプローチには大きな違いがあります。

AD リサイクル ビンを使用しない復元

AD Recycle Bin is disabledの場合、AD オブジェクトの削除および復元プロセスは次のとおりです。

  1. オブジェクトが削除されると、そのオブジェクトはトゥームストーンになります。
  2. トゥームストーン オブジェクトは、 “削除済みオブジェクト” コンテナに、現在のドメインの tombstoneLifetime で設定された期間、保存されます。 オブジェクトがトゥームストーン(削除済みオブジェクトとも呼ばれます)になると、ほとんどの属性が失われます。
  3. トゥームストーンの有効期間中は、AD オブジェクトを復元できますが、その属性に記録された追加情報は一切含まれません。
  4. トゥームストーンの有効期間が満了すると、オブジェクトは物理的に削除され、復元することはできなくなります。

Active Directory オブジェクトのライフサイクルは、AD ごみ箱を使用せずに AD オブジェクトを復元する原理を説明するために、以下の図に示されています。

The lifecycle of a deleted Active Directory object when the AD Recycle Bin is disabled

AD ごみ箱からの復元

以下の場合は状況が異なります。 turn on Active Directory Recycle Bin:

  1. AD オブジェクトが削除されると、そのオブジェクトの状態は”論理的に削除済み”の状態に変わります。 オブジェクトの属性は、 削除されたオブジェクトの存続期間 属性 ( msDS-deletedObjectLifetime ) で設定された期間、保持されます。この期間は、デフォルトでは リサイクルされたオブジェクトの存続期間 の期間(180 日)と同じです。 この期間中は、Active Directory から削除されたオブジェクトを復元することができます。
  2. isDeleted 属性は、 True に設定されます。 isRecycled 属性は、 False になります。
  3. 削除オブジェクトの存続期間 が満了すると、オブジェクトの状態は、 論理的に削除済み から、 リサイクルされたオブジェクト に変更されます。 リサイクルされたオブジェクトは、AD リサイクル ビンが無効になっている場合のトゥームストーン オブジェクトに似ています。
  4. このリサイクルされたオブジェクトは、 tombstoneLifetime 属性で定義された リサイクルされたオブジェクトの有効期間 が満了するまで、 削除済みオブジェクト コンテナ内に残ります。 デフォルトでは、この期間は 180 日間です。 の isRecycled 属性は、 True に設定されます。論理的に削除された状態でも保持されていたオブジェクト属性のほとんどは削除されます。
  5. のリサイクルされたオブジェクトの有効期間 ( tombstoneLifetime ) が満了すると、Active Directory のガベージコレクション機構によってリサイクルされたオブジェクトが完全にクリーンアップされ、このオブジェクトは物理的に削除されます。 オブジェクトの復元はもはや不可能です。

The lifecycle of a deleted Active Directory object when the AD Recycle Bin is enabled

Active Directory ごみ箱:知っておくべきこと

Active Directory ごみ箱は、Windows Server 2008 R2 で初めて導入され、当初は PowerShell でのみ使用可能でした。AD ごみ箱のグラフィカル ユーザー インターフェイス (GUI) は、Windows Server 2012 以降で利用可能になりました。デフォルトでは、AD ごみ箱は無効になっています。

AD ごみ箱を有効にする前に、以下の点に注意してください:

  • Active Directory ごみ箱を有効にすると、ドメイン フォレスト内のすべてのトゥームストーンが削除されます。つまり、Active Directory オブジェクトを削除した後に AD ごみ箱を有効にした場合、それらのオブジェクトを復元することは不可能になります。 削除された Active Directory オブジェクトを復元するには、ごみ箱に依存しない他の方法を使用し、その後にのみごみ箱を有効にしてください。
  • AD ごみ箱を有効にすると、AD ごみ箱が有効になった後に削除された AD オブジェクトを復元できるようになります。AD ごみ箱を有効にする before AD オブジェクトを削除する前に、AD ごみ箱を有効にしてください。
  • AD ごみ箱を一度有効にすると、無効にすることはできません。この設定は元に戻せません。 ADドメインコントローラーのバックアップを作成する この機能を恒久的に必要とするかどうか確信が持てない場合は、AD ごみ箱を有効にする前に慎重に検討してください。
  • AD ごみ箱を有効にすると、Active Directory スキーマが変更されます。
  • オブジェクトの状態が変更された後、そのオブジェクトと属性が一時的に Active Directory 内に保持されるため、Active Directory のサイズが増大します。

ネイティブ ツールを使用して削除された AD オブジェクトを復元する方法

Active Directory 内のオブジェクトを削除し、AD ごみ箱を使用する場合と使用しない場合の両方で、それらを復元する方法について解説します。 ここでは、4つのネイティブ手法について解説します:

  • 例1:PowerShellの使用
  • 例2:ADRestoreの使用
  • 例3:Ldp.exeの使用
  • 例4:ADリサイクル ビンからの復元

最初の3つの例は、ADリサイクル ビンを使用せずにADオブジェクトを復元するものです。4番目の例では、Active Directoryリサイクル ビンを有効にし、いくつかのオブジェクトを削除してから、それらを復元します。

The environment used in the examples:

  • Windows Server 2019 上で実行されているドメイン コントローラーで、ドメイン フォレスト内の唯一のドメイン コントローラーです。
  • ドメイン名は ID.TEST
  • ユーザーは複数存在します – user1 user2 user3 などです。 この AD ドメイン内の グループGroup-A のメンバーであるユーザーです。

なお、以下で説明するネイティブの手法では、削除された AD ユーザーを復元するためにドメイン コントローラーをシャットダウンしたり、オフラインにしたりする必要はありません。

例 1: PowerShell での AD オブジェクトの復元 (Restore-ADObject)

Active Directory から user1 を削除し、その後、 user1 オブジェクトを復元してみましょう。 これらの操作はドメイン コントローラー上で実行します。

How to delete and restore deleted AD account

削除された AD ユーザーを復元するには、次の手順を実行します。

  1. 管理者権限(昇格された PowerShell)で PowerShell を開きます。
  2. 削除されたオブジェクトは、 DeletedObjects コンテナにあり、 isDeleted フラグが設定されています。次のコマンドで削除された AD オブジェクトを表示します。

Get-ADObject -IncludeDeletedObjects -Filter {IsDeleted -eq $true}

  1. オブジェクトを復元するには、そのオブジェクトから isDeleted フラグを削除する必要があります。 user1 を復元する必要があります。 名前が user で始まるすべてのオブジェクトを表示するコマンドを入力します。この目的のために、フィルターに以下のオプションを追加します: {Isdeleted -eq $true -and Name -like “user*“}

以下のコマンドは、 user2 user3 など、削除された他のユーザーを表示する場合にも適用されます:

Get-ADObject -IncludeDeletedObjects -Filter {Isdeleted -eq $true -and Name -like "user*"}

How to view information about a deleted AD user in PowerShell

  1. 必要なオブジェクトの ObjectGUID または DistinguishedName を控えておいてください。 この例では、 ObjectGUID を、 user1 に対して使用します:

4c723d90-5a05-47c3-9482-c05dc3c6201c

  1. 削除されたオブジェクトを復元するには、次のようなコマンドを実行します:

Restore-ADObject -Identity "GUID or DistingushedName here" -NewName "new_restore_name"

この例では:

Restore-ADObject -Identity "4c723d90-5a05-47c3-9482-c05dc3c6201c" -NewName "user1-restored"

  1. 必要に応じて、 -TargetPath キーを使用し、新しい場所の識別名 (DN) を設定することで、現在のオブジェクトを復元する別の場所を指定することもできます。例:

CN=Users,DC=domain,DC=net

コマンドを実行して Active Directory オブジェクトを復元した後、 user1 は、 Users カタログや、 Group-A (このユーザーが以前所属していた場所)には表示されません。

If you recover deleted AD accounts without the Recycle Bin, group membership is not restored

これは、AD リサイクル ビンを使用せずに Active Directory オブジェクトを削除すると、たとえオブジェクト自体が復元されたとしても、ほぼすべてのオブジェクト属性が失われるためです。

We restore deleted AD accounts and can find the accounts in Domain Users

復元されたADオブジェクト user1-restored は、 の”ドメインユーザー” グループ内に確認できます。ユーザーのログオン名は、Windows 2000以前の形式でのみ保存されています。 user1-restored アカウントは無効な状態になっています。重要な点は、元の SID が保持されており、このユーザーに関連付けられたファイルやフォルダの NTFS アクセス権は引き続き有効であるということです。

Only the pre-Windows 2000 logon name is preserved after restoring an AD user

注: トゥームストーンから削除されたオブジェクトを復元する代わりに、新しい AD オブジェクトを再作成した場合、 objectGUID および objectSID 属性には新しい値が割り当てられるため、このオブジェクトへの参照を更新する必要があります。

ログオン名の編集、アカウントの有効化、パスワードの更新、およびこのユーザーを Group-A に追加する必要があります。すべての属性とメンバーシップを正しく復元するには、多くの手作業が必要です。

例 2: ADRestore を使用した削除済み AD ユーザーの復元

2 番目の例でも、Active Directory ごみ箱は依然として無効になっています。

User2 は、 Group-A のメンバーですが、削除されました。

ここでは、無料の ADRestore ツールを使用して、Active Directory から削除されたオブジェクトを復元します。このツールは Microsoft の Web サイトから入手できます:

https://docs.microsoft.com/en-us/sysinternals/downloads/adrestore

  1. ツールをダウンロードし、ZIP アーカイブの内容を特定のフォルダー(例: C:programsadrestore
  2. )に解凍します。PowerShell でこのディレクトリに移動します:

cd c:programsadrestore

PowerShell を管理者として実行します。

  1. 削除された user2 に関する情報を、管理者権限の PowerShell で正確なユーザー名を指定して表示します:

Get-ADObject -Filter 'SAMAccountName -eq "user2"' -IncludeDeletedObjects

Viewing the information about the deleted user in PowerShell

Deleted: True これにより、このユーザーが削除されていることが確認できます。

CN=Deleted Objects は、オブジェクト(ユーザーアカウント)が Deleted Objects コンテナに移動されたことを意味します。

  1. ObjectGUID user2 の値をメモします:

c6c121a3-d664-4d71-a6ef-9ad26b833fe6

  1. adrestore を使用してオブジェクトを復元するコマンドを入力し、必要なユーザーの ObjectGUID を指定します:

.adrestore -r c6c121a3-d664-4d71-a6ef-9ad26b833fe6

y と入力し、 Enter を押して確認し、続行します。

How to restore Active Directory object with ADRestore in PowerShell

  1. 削除されたオブジェクト( user2 )が復元されたら、 Active Directory ユーザーとコンピューター ウィンドウでこのユーザーを確認してください。

結果は最初の例と同様です。 user2 は、属性やグループメンバーシップなどの追加データなしで復元されます。

AD recovery – the user is restored

例 3: Ldp.exe を使用して削除された AD ユーザーを復元する

削除された AD ユーザーを復元するためのこのチュートリアルの 3 番目の方法 user 3 では、AD ごみ箱は必要ありません。この方法では、無料の ldp.exe LDAP ユーティリティを使用します。

Ldp ツールは、Windows Server 2008 や 2012 などの Windows Server オペレーティングシステムに標準で付属する Microsoft 製のツールです。このツールは、Windows エクスプローラー風のグラフィカルユーザーインターフェイス(GUI)を備えた軽量な LDAP クライアントであり、Active Directory エントリの表示や編集を行うことができます。

  1. Start > Run “をクリックします(または” Win+R“を押します)。
  2. ldp “の”Run” プロンプトに” “と入力し、” Enter“を押します。

Running the Ldp tool for restoring AD objects after deleting

  1. Ldpのメインウィンドウで” Connection > Connect “をクリックします。

Connecting to a server in the Ldp.exe utility

  1. “の”Connect” ウィンドウで必要なパラメータを設定します。

Server: AD DCサーバーのIPアドレスまたは名前を入力します。

Port: デフォルトでは389または636が使用されます。

OK“をクリックします。

Setting up the connection parameters in the Ldp tool

  1. Ldpのメインウィンドウで” Connection > Bind “をクリックします。

Binding to Active Directory in the LDP.exe tool

  1. ドメインコントローラーにドメイン管理者としてログインしていることを前提として、最初のオプション”
  • Bind as currently logged on user“を選択します。

2番目のオプション( “Bind with credentials” )を使用し、ユーザー名、パスワード、および接続先のドメインを設定することもできます。

OK “をクリックして続行します。

Selecting binding options

  1. Ldpのメインウィンドウで” Options > Controls “をクリックします。

管理者権限で実行されたPowerShellで、コマンドを実行して削除されたユーザーに関する情報を確認できます。

Get-ADObject -Filter 'SAMAccountName -eq "user3"' -IncludeDeletedObjects

オブジェクトGUI user3 は次のとおりです:

17ede5dc-b527-4ae4-ba5b-3ed50855be80

Return deleted objects “の”Load Predefined” ドロップダウンメニューから” “を選択します。 ” “の”Controls” ウィンドウで” OK“をクリックします。

Selecting Return deleted objects in Controls to restore deleted AD objects

  1. Ldpのメインウィンドウで” View > Tree “をクリックします。

“の”BaseDN” を入力します。ドメイン名は ID.TEST で、” “の”BaseDN” DC=ID,DC=TEST

です。” OK “をクリックして続行します。

Entering a baseDN when using Ldp.exe

  1. ツリーをナビゲートして、復元が必要な削除済みオブジェクトに移動します(この例では、 user3 が、ADリサイクルビンから復元したいオブジェクトです)。ドメインを展開し、 Deleted Objects コンテナを展開します。
ユーザーの名前は user3 です。このオブジェクトのObjectGUIDは、ツリービューが有効になっているLdpウィンドウに表示されます。 ご覧のとおり、 user3 のこの ObjectGUID は、上記の PowerShell に表示されているものと同じです。

注: 実行された操作の結果は、ウィンドウの右ペインで確認できます。

Selecting a deleted AD user in the window of the LDP tool

  1. オブジェクト(この場合は user3 )を右クリックし、コンテキストメニューの Modify をクリックします。

There is the need to modify some values to restore AD account in the Ldp tool

  1. DN は、すでに自動的に選択されています。

isDeleted “を” “の”Edit Entry Attribute” フィールドに入力します。

Delete “を” “の”Operation” オプションから選択します。

このウィンドウの” Enter “ボタンをクリックします。

Selecting the isDeleted attribute to delete for the AD object we want to recover

  1. distinguishedName “を” “の”Values” フィールドに入力します。

オブジェクトを復元するための値を入力します。例: CN=user3,OU=Users,DC=ID,DC=test

復元用のカスタム DN 位置の値を入力することもできます。

Replace “操作を選択します。

この Enter ウィンドウのインターフェースで、 ボタンをクリックします。

Synchronous および Extended のチェックボックスを選択します。その後、 Runをクリックします。

Entering values and selecting the Replace operation

この方法で Ldp (LDAP) ツールを使用して AD オブジェクトを選択した場所に復元した後、属性を含む追加データ(パスワード、グループメンバーシップなど)は復元されません。 これらのパラメータは手動で設定する必要があります。

一般的に、結果は他の 2 つの方法(これらも AD リサイクル ビンを使用しない)で得られる結果と似ています。

Active Directory リサイクル ビンを有効にして、Active Directory から削除されたオブジェクトを復元した際の異なる結果を確認してみましょう。

例 4: Active Directory リサイクル ビンからの復元方法

復元を進める前に、AD リサイクル ビンの有効化方法を確認しましょう。

Active Directory リサイクル ビンの有効化方法

AD リサイクル ビンを有効にする前に、 Active Directory をバックアップする ドメイン コントローラーをバックアップしておくことをお勧めします。これにより、必要に応じて、AD リサイクル ビンが無効で、既存のトゥームストーンが残っている状態へロールバックできるようになります。

次のコマンドを実行して、Active Directory リサイクル ビンが有効になっているかどうかを確認します。

Get-ADOptionalFeature "Recycle Bin Feature" | select-object name,EnabledScopes

出力に空の角括弧 {} が表示されている場合、AD リサイクル ビンは無効になっています。

How to view AD Recycle Bin status (enabled or disabled) in PowerShell

AD リサイクル ビンを有効にするための要件は以下の通りです。

  • Windows Server には、ドメイン管理者、または”Enterprise Admins”グループもしくは”Schema Admins”グループのメンバーであるユーザーとしてログインしている必要があります。
  • Active Directory ごみ箱を有効にするには、フォレスト機能レベルが Windows Server 2008 以降である必要があります。

AD ごみ箱を有効にする主な方法は、PowerShell を使用する方法とサーバー マネージャーを使用する方法の 2 つがあります。

1. Enabling AD Recycle Bin in PowerShell

管理者権限で実行する PowerShell で、次のコマンドを実行して Active Directory リサイクル ビンを有効にします。

Import-Module ActiveDirectory

一般的に、AD リサイクル ビンを有効にするコマンドは次のようになります。

Enable-ADOptionalFeature 'Recycle Bin Feature' -Scope ForestOrConfigurationSet -Target <your forest root domain name>

この例の場合、ドメイン名を指定した正確なコマンドは次のとおりです。

Enable-ADOptionalFeature -Identity 'CN=Recycle Bin Feature,CN=Optional Features,CN=Directory Service,CN=Windows NT,CN=Services,CN=ConfigurationDC=id,DC=test' -Scope ForestOrConfigurationSet -Target 'id.test'

この例で使用されている id.test の代わりに、ご自身のドメイン名を入力してください。

2. Enabling AD Recycle Bin in Server Manager

  1. サーバー マネージャーを開きます。[ Start ] をクリックし、 server manager と入力するか、 Win+Rを押します。[ ] の [Run] ウィンドウで、 を開き、 dsac.exe と入力して [ Enter] をクリックします。
  2. [ Tools > Active Directory Administrative Center ] のサーバー マネージャー ウィンドウで、 に移動します。

Opening the Active Directory Administrative Center

  1. 左ペインでフォレストルートドメインを選択します。この例では、 ID (local) を選択します。
  2. 右ペインの Enable Recycle Bin をクリックします。

How to enable Active Directory Recycle Bin in the AD Administrative Center

  1. 警告を確認し、 OK ウィンドウで をクリックして続行します。

Refresh AD Administrative Center after you turn on AD Recycle Bin

  1. Active Directory 管理センターのウィンドウを更新する必要があります。管理センターウィンドウの右上隅にある Refresh ボタンをクリックします。
  2. その後、 Enable Recycle Bin オプションがグレー表示(無効)になります。
  3. ドメインをクリックして内容を展開すると、メニューに” Deleted Objects “コンテナが表示されます。

Locating an object to restore from AD Recycle Bin

  1. PowerShell で次のコマンドを実行し、Active Directory リサイクル ビンが有効になっていることを確認してください。

Get-ADOptionalFeature "Recycle Bin Feature" | select-object name,EnabledScopes

機能に関する詳細情報を表示するには、次のコマンドを使用します。

Get-ADOptionalFeature -filter *

How to check that the AD Recycle Bin in enabled in PowerShell

Active Directory リサイクル ビンからのユーザーの復元

以前の例で他のユーザーに対して行ったのと同様に、 id.test ドメイン内の Group-A に所属する user4 を削除してみましょう。

Deleting a user in Active Directory

Server Manager > Active Directory Administrative Center で AD ごみ箱を開き、削除されたユーザーを選択します。 User4 は、この例で Active Directory ごみ箱から復元したいオブジェクトです。

ごみ箱内の削除済み Active Directory オブジェクトには、主に 4 つのオプションがあります:

  • Restore – 削除された AD オブジェクトを元の組織単位に復元する
  • Restore To – 削除された AD オブジェクトを復元する先として、別の組織単位を選択する
  • Locate Parent – 削除されたオブジェクトが保存されていた元の組織単位を開く
  • Properties – 削除されたオブジェクトの”作成日” や” “などのプロパティを表示する , Modified , Canonical Name , Object Class または Update Sequence Numbers

ユーザーを元の場所に復元するには、ウィンドウ左側のメニューにある Restore をクリックします。

User4 is the object we need to restore from AD Recycle Bin

User4 は、関連するすべてのデータと属性が保持された状態で、Active Directory オブジェクトとして同じ場所に復元されました。グループのメンバーシップは保持されており、 user4 は、復元後も Group-A のメンバーとなっています。

A user has been restored with attributes and group membership

PowerShell で Active Directory ごみ箱から削除された AD ユーザーを復元するコマンドは次のとおりです。

Get-ADObject -Filter {displayName -eq "user4"} -IncludeDeletedObjects | Restore-ADObject

user4 を、サーバー上で復元したいオブジェクトに置き換えてください。

したがって、Active Directory ごみ箱は、 Active Directoryのバックアップを実行していない場合に役立ちます。

AD ごみ箱の保持期間を変更する方法

Active Directory ごみ箱の設定を変更することで、Active Directory 内で削除されたオブジェクトをより長期間復元できるようにすることができます。 ここでは、以下の 2 つの設定の変更について説明します。

  1. トゥームストーンの有効期間 ( tombstoneLifetime )
  1. 削除済みオブジェクトの有効期間 ( msDS-DeletedObjectLifetime )

注: これら 2 つのパラメーターの値を大きくすると、Active Directory のパフォーマンスに影響が出る可能性があります。

PowerShell で現在のトゥームストーンの有効期間を確認する方法

管理者権限で実行した PowerShell で、次のコマンドセットを使用して現在のトゥームストーンの有効期間を確認します。

Import-Module ActiveDirectory

$ADForestconfigurationNamingContext = (Get-ADRootDSE).configurationNamingContext

$DirectoryServicesConfigPartition = Get-ADObject -Identity "CN=Directory Service,CN=Windows NT,CN=Services,$ADForestconfigurationNamingContext" -Partition $ADForestconfigurationNamingContext -Properties *

$TombstoneLifetime = $DirectoryServicesConfigPartition.tombstoneLifetime

Write-Output "Active Directory’s Tombstone Lifetime is set to $TombstoneLifetime days `r "

How to view AD Recycle Bin tombstone lifetime in PowerShell

  1. Windows Server 2019 に標準でプリインストールされているツール” ADSI Edit “を開きます。

このツールは、

C:ProgramDataMicrosoftWindowsStart MenuProgramsAdministrative Tools

または次のパスからアクセスできます:

%SystemRoot%system32adsiedit.msc

Start をクリックし、 ASDI Edit と入力すると、ツールをすばやく実行できます。

How to open ADSi Edit in Windows

  1. ウィンドウ内の ADSI Edit を右クリックし、コンテキストメニューから Connect to を選択します。

Connecting to an Active Directory domain controller in ADSI Edit

  1. の [接続設定] ウィンドウで、以下のパラメーターを設定します:
  • 名前: Configuration
  • 接続ポイント : Select a well known Naming Context > Configuration
  • コンピュータ: Default

OK をクリックして、これらの設定を適用します。

ADSI connection settings

  1. Active Directory の構成パラメータを含むツリーが、 ADSI Edit ツールのメインウィンドウに表示されます。
  2. Configuration > CN=Configuration > CN=Services > CN=Windows NT > CN=Directory Service
  3. に移動し、 CN=Directory Service を右クリックして、コンテキストメニューから Propertiesをクリックします。

Opening properties for Directory Service

  1. プロパティの一覧を下にスクロールして、 tombstoneLifetimeを見つけます。前に確認した通り、デフォルト値は 180 日です。
  2. tombstoneLifetime をダブルクリックして、設定値を編集します。

How to change Tombstone Lifetime

  1. 新しい値(例: 365 )を入力し、 OK をクリックして設定を保存します。

Changing tombstoneLifetime

注: 値を null <not set>に設定した場合、tombstone の有効期間は自動的に 60 日間に設定されます。これは、null 値に対するこの期間がシステム構成にハードコードされているためです。

  1. 新しい値が設定されました。

Tombstone Lifetime is changed

  1. OK をクリックして設定を保存し、 Properties ウィンドウを閉じます。

上記で説明した一連のコマンドを使用して、PowerShell で値が設定されたことを確認できます。

Checking a new Tombstone Lifetime value in PowerShell

PowerShell でトゥームストーンの有効期間を編集する方法

管理者として PowerShell を開きます。

管理者権限の PowerShell で、一連のコマンドを実行して新しいトゥームストーンの有効期間値を設定します:

Import-Module ActiveDirectory

$ADForestconfigurationNamingContext = (Get-ADRootDSE).configurationNamingContext

Set-ADObject -Identity "CN=Directory Service,CN=Windows NT,CN=Services,$ADForestconfigurationNamingContext" -Partition $ADForestconfigurationNamingContext -Replace @{tombstonelifetime='366'}

前のセクションで説明した適切な一連のコマンドを使用して、更新されたトゥームストーンの有効期間を確認します。

How to change tombstone lifetime for AD recovery in PowerShell

削除済みオブジェクトの有効期間を変更する方法

msDS-deletedObjectLifetime 属性は、削除済みオブジェクトの有効期間を決定します。このパラメータは、トゥームストーンの有効期間パラメータを編集したときと同様に、 ASDI Edit ツールを使用して編集できます。

Configuration > CN=Configuration,DC=ID,DC=TEST > CN=Services > CN = Windows NT > CN=Directory Service

にアクセスします。 CN=Directory Serviceで、 msDS-deletedObjectLifetime 属性を探し、その値を編集します。デフォルトでは、この値は null <not set> に設定されています。これは、削除されたオブジェクトの存続期間がトゥームストーンの存続期間と同じであることを意味します。

設定できる最小値は 2 (つまり 2 日)です。

How to change the Deleted Object lifetime

ネイティブ AD 回復ツールの制限事項

ネイティブ AD 回復ツールおよび手法を使用する際の制限事項をまとめましょう:

  • コマンドの実行や、提供されているユーティリティのGUIで必要なパラメータの設定など、手作業が多く必要となります。
  • 検索や復旧のプロセスには時間がかかる場合があります。
  • 復旧後、ユーザーのパスワードは保持されません。 ユーザーごとにパスワードをリセットする必要があります。
  • 復元されたオブジェクトに対して、一部のオブジェクトや属性を手動で追加する必要があります。
  • Active Directory ごみ箱は、AD オブジェクトの復元プロセスを改善し、ほとんどのオブジェクト属性を復元します。ただし、オブジェクトが削除される前にこの機能が有効になっていない場合、この機能は役立ちません。
  • Active Directory ごみ箱を有効にすると、ディレクトリ情報ツリー (DIT) のサイズが増加します。
  • 削除から経過した時間がトゥームストーンの有効期間を超えている場合、削除された Active Directory オブジェクトを復元することはできません。

幸いなことに、Active Directory のバックアップを利用すれば、AD リサイクル ビンに課せられた時間制限を回避できます。

バックアップからの AD オブジェクトの復元

バックアップから削除された Active Directory オブジェクトを復元することは最も信頼性の高い方法であり、AD リサイクル ビンが有効かどうかにかかわらず、削除された AD オブジェクトを復元することができます。 このバックアップ方法では、物理サーバーまたは仮想マシン上で動作する Active Directory またはドメイン コントローラー全体をバックアップします。

ユニバーサル データ保護ソリューションである NAKIVO Backup & Replication を使用して、バックアップから削除された Active Directory オブジェクトを復元する方法について説明します:

  • すでに Active Directory ドメイン コントローラーのバックアップを実行済みです。この例では、ドメイン コントローラーは VMware vSphere 上の仮想マシン (VM) にインストールされており、VM 全体をバックアップしています。
  • オペレーティングシステムは、この記事の以前の例と同様、Windows Server 2019 です。
  • この例でのドメイン名は domain1.local ですが、ドメインに関するその他の設定は前回と同じです。

要件

削除された AD オブジェクトを復元するサーバーの要件は次のとおりです:

  • Visual Studio 2015 用の Visual C++ 再配布可能パッケージがインストールされている必要があります。 vc_redist.x86.exe (v.2015)のインストーラーは、Microsoft の Web サイトから入手できます。
  • iSCSI イニシエーター サービスが起動している必要があります。
  • TCP ポート 5000 が開いている必要があります。
  • PowerShell 用 Active Directory モジュールがインストールされている必要があります。

AD オブジェクトの削除

ドメイン domain1.local 内の組織単位 unit1 を削除してみましょう。 この組織単位には、 user1 user2 、および user3 の3人のユーザーが登録されています。

Deleting users in Active Directory

バックアップから削除されたADオブジェクトを復元する

NAKIVOバックアップソリューションのWebインターフェースを開きます。

Active Directoryドメインコントローラーのバックアップを含むVMware vSphere VMバックアップジョブを選択します。

[ Recover > Microsoft Active Directory objects] をクリックします。

Starting to recover deleted AD objects

Microsoft ADサーバーのオブジェクト復元ウィザードが開きます。

  1. Backup。選択したバックアップから必要な仮想マシンを選択します。次に、復元ポイントを選択します。 この例では、バックアップには AD サーバーを含む 1 台の仮想マシン(VM 名は Blog-Win19-DC )が含まれており、最新の復元ポイントを選択します。

各ステップで [ Next ] をクリックして続行します。

Selecting a backup and recovery point from which to recover Active Directory objects

  1. Recovery Server。復元サーバーの設定を選択します:
  • Recovery Server: 削除された AD オブジェクトを復元する先として、復元サーバーを選択します。これらのオブジェクトは同じ仮想マシンに復元します。リストを展開して、インベントリからサーバーまたは仮想マシンを選択できます。
  • Server hostname or IP: 選択した VM またはサーバーのホスト名または IP アドレスを入力します。
  • Username: ドメイン管理者、またはドメイン内で適切な権限を持つその他のユーザーのユーザー名を入力します。この例では、ユーザー名は domain1administrator
  • Password: 指定したユーザーのパスワードを入力します。

Selecting a recovery server for AD recovery

Test Connection“をクリックします。 テストに合格した場合は、 Nextをクリックします。

Configuring recovery server settings and testing the connection

注: AD オブジェクトを復元する対象の Windows Server マシンで、iSCSI イニシエーター サービスが実行されていることを確認してください。そうでない場合、” “iSCSI Initiator” サービスがリカバリ サーバー上で実行されていません”というエラーが表示されます( )。この場合、接続テストは失敗します。

Microsoft iSCSI イニシエーター サービスは、”コンピューターの管理”ウィンドウ(Computer Management > Services and Applications > Services )から開始できます。

How to start the iSCSI initiator service in Windows

別の方法として、PowerShell からサービスを開始することもできます:

  1. iSCSI イニシエーター サービスの状態を確認します:

Get-Service -Name MSiSCSI

  1. iSCSI サービスを開始します:

Start-Service msiscsi

  1. サービスの起動タイプを”自動”に設定します:

Set-Service -Name MSiSCSI -StartupType Automatic

  1. iSCSI イニシエーター サービスが開始されているか確認します:

Get-Service -Name MSiSCSI

How to start the iSCSI initiator service in PowerShell

  1. Objects。復元したい AD オブジェクトを選択します。高度な自動化により、複数のオブジェクトを一度に復元することが可能です。 削除された AD アカウントを復元します。
左ペインで、バックアップに含まれている Active Directory オブジェクトのツリーを参照します。親オブジェクトを選択したら、右ペインで復元するオブジェクトを選択します。この例では、 unit1 を参照し、この組織単位にある 3 人のユーザー( user1 user2 、および user3 )を選択して復元します。

Select and restore deleted AD users

注: iSCSI サービスが開始されていない場合、 “リカバリ ポイントを読み込めません” というメッセージが表示されることがあります。Linux マシン(たとえば、バックアップ リポジトリまたはトランスポーターがインストールされているマシン)で iSCSI サービスを開始するには、次のコマンドを実行します:

/etc/init.d/iscsid start

  1. Options。この手順で AD リカバリ オプションを選択します。利用可能なすべてのオプションを以下に示します。
  • Recovery type:
  • 元の場所に復元
  • エクスポート
  • Recovery of user object:
  • ユーザーを無効にする
  • 次回のログオン時にパスワードの変更をユーザーに要求する
  • Overwrite behavior:
  • 復元された項目が存在する場合、その項目名を変更する
  • 復元された項目が存在する場合、その項目をスキップする
  • 元の項目が存在する場合、その項目を上書きする

この AD 復元の例では、以下のスクリーンショットに示すように、項目を元の場所に復元し、オプションを選択しています。

Options to recover deleted AD objects

Recover“をクリックし、通知を確認してから” Proceed“をクリックします。

Restoring AD objects – a notification about attributes

  1. Finish。Active Directory オブジェクトの復元が開始されました。 復元処理が完了するまでお待ちください。

この方法を使用して AD オブジェクトの復元処理が完了したら、Windows Server 2019 で “Active Directory ユーザーとコンピューター” を開き、削除された AD 組織単位 ( unit1 ) が子オブジェクトとともに復元されているかどうかを確認できます。

以下のスクリーンショットにあるように、 unit1 に保存されていたすべてのユーザーが復元されています。グループメンバーシップを含む、それらの属性のほとんどは保持されています。 あとはパスワードをリセットし、これらのユーザーアカウントを有効にするだけです。

AD recovery has finished – checking the data of the recovered users

バックアップからの高度な AD 復元

高度にカスタマイズされた設定を使用して、バックアップから削除された Active Directory オブジェクトを復元する高度な Active Directory 復元を行う必要がある場合があります。たとえば、バックアップから AD オブジェクトをカスタムサーバーにエクスポートし、パラメータを編集して、必要な場所にインポートすることができます。

NAKIVO のユニバーサルデータ保護ソリューションを使用すれば、このようなタスクを実行できます。 例を見てみましょう。

バックアップからのADオブジェクトのエクスポート

Webインターフェースでのワークフローの最初の手順は、この記事の前のセクションで説明したものと同じです。オブジェクト復元ウィザードの3番目の手順に直接進みましょう。高度なAD復元ワークフローの違いは、この手順から始まります。

  1. Objects。この例では、復元する他のActive Directoryオブジェクトを選択してみましょう。削除されたADユーザーを復元したいとします。 Users を参照して、 user10 を選択します。 Users ディレクトリから、バックアップから復元する複数のADオブジェクトを選択できます。

Active Directory restore deleted users (selecting users to restore)

  1. Options。復元したい選択したActive Directoryオブジェクトをエクスポートするように選択します。オブジェクトを復元サーバーのローカルフォルダーにエクスポートしたいので、このステップでの設定はすべて以下の通りです。
  • Recovery type: エクスポート
  • Export location: 復旧サーバー上のローカルフォルダ
  • Local path: C:TempAD-Recovery
  • Overwrite behavior: 復旧対象の項目が既に存在する場合、その項目の名前を変更する

Recover “および” Proceed “をクリックして続行します。

AD recovery options for export and confirmation to proceed

復旧ジョブが完了し、選択した Active Directory オブジェクトが宛先へエクスポートされるまで待ちます。

エクスポート処理が完了すると、” “C:TempAD-Recovery フォルダ内に Active Directory オブジェクトを確認できます。各 AD オブジェクトは個別の LDIF ファイルとしてエクスポートされます。 Selected AD objects are exported to LDIF files for recovery

LDIFファイルは、エクスポートされたActive Directoryオブジェクトの情報を含む編集可能なテキストファイルです。削除されたADユーザー、具体的にはuser10を復元してみましょう。以下のスクリーンショットに、LDIFファイルの内容の例があります。

The contents of the LDIF file

Ldifdeは、Active Directoryオブジェクトを。LDIFファイルにエクスポート/インポートできる、Windows Serverネイティブのユーティリティです。ただし、このツールを使用するには、認証局(CA)サーバーの役割をインストールする必要があります。

ADオブジェクトを復元するためのWindowsサーバーの準備

始める前に、Active DirectoryサーバーにCAの役割があることを確認してください。これは安全なLDAP接続に必要です。この役割はServer Managerを使用してAdd roles and featuresウィザードで有効にできます。この役割の追加の手順は標準的で、主要なステップに焦点を当てます。

Active Directory Certificate ServicesチェックボックスをServer Rolesステップで選択してください。

役割と機能の追加ウィザードの間に行います。

Installing AD Certificate Services restore deleted AD objects and import them with ldifde

Certification AuthorityRole Services stepで選択します。

Installing Certification Authority to recover deleted AD objects

ウィザードのすべての手順を完了した後、インストールされた役割のポストデプロイメント構成を実行する必要があります。

Active Directory Certificate Services post-deployment configuration

標準のAD CS構成ウィザードの手順に従います。

  1. 資格情報。ドメイン管理者の資格情報を入力します(私たちのケースではdomain1 administrator)
  2. ロールサービス。認証局が選択されていることを確認します。
  3. セットアップの種類。Enterprise CAを選択します。
  4. CAの種類。ルートCAを選択します。
  5. プライベートキー。新しいプライベートキーを作成します。
  6. 暗号化。デフォルト設定を使用できます。
  7. CAの名前。CAの名前がドメインに正しいことを確認します。
  8. 証明書の有効期間。例えば、5年の期間をセットしてください。
  9. 証明書データベース。デフォルト設定を使用して問題ありません。

Active Directory Certificate Services are installed to recover deleted AD objects with ldifde

AD CS構成ウィザードを完了した後、変更を反映するためにWindowsサーバーを再起動します。

ADの復旧を終える

これで、Windows PowerShellのコマンドラインLdifdeツールを使用して、バックアップからエクスポートした削除されたオブジェクトをActive Directoryにインポートして復元することができます。

  1. PowerShellを管理者として開きます。
  2. 復元された項目のLDIFファイルが格納されているディレクトリに移動します:

cd C:TempAD-Recovery

  1. LDIFファイルからADオブジェクトをインポートして復元するためのコマンドは次のとおりです:

ldifde -i -t 636 -f filename.ldif -k -j logfolder

ここで、 filename.ldif はLDIFファイルへのパス、 logfolder はプロセスログが保存されるフォルダへのパスです。 -t 636 オプションは、AD サーバーとのセキュアな接続に使用される TCP ポート 636 を意味します。この例では、削除された AD オブジェクトをインポートして復元するコマンドは次のとおりです。

ldifde -i -t 636 -f NakivoExport-domain1.local.Users.user10.ldif -k -j C:TempAD-RecoveryLog

ここでは、 user10 を復元しています。インポートが成功した場合の PowerShell コンソールの出力例を、以下のスクリーンショットに示します。

Restoring AD objects by using ldifde import in PowerShell

注: ldifde ツールを使用して Active Directory オブジェクトを手動でエクスポートする場合は、フィルターを使用してください。 管理者が AD オブジェクトのすべての属性をインポートできるわけではありません。一部の属性は保護されており、これらの属性をインポートする権限はシステムのみに属しています。この場合、LDIF ファイルからオブジェクトをインポートしようとすると、次のようなエラーメッセージが表示されることがあります。 この属性はセキュリティアカウントマネージャー (SAM ) が所有しています、 問題 5003 (WILL_NOT_PERFORM) など。

ユーザーやグループなどのオブジェクトをすべての属性とともにエクスポートした場合、インポートする前に、.LDIF ファイルから objectGUID objectSid sAMAccountType などの一部の属性を、該当する行を削除して手動で削除する必要がある場合があります。 そうしないと、 ldifde ツールを使用してオブジェクトをインポートできません。

専用のバックアップソリューションを使用せずに、 ldifde ツールのエクスポート/インポート機能を使用してバックアップや復元を行う場合は、これらの点に留意してください。Active Directory サーバー全体または仮想マシンを保護し、AD オブジェクトの完全復元やきめ細かな復元を迅速かつ容易に行えるようにするには、専用のバックアップソリューションを使用することをお勧めします。

結論

Active Directory およびそこに含まれるすべての項目を含むデータやアプリケーションを確実に保護する方法は、適切なデータバックアップを定期的に実行し、合理的な保存期間ポリシーに基づいてバックアップを保管することです。この場合、専用のバックアップソリューションが役立ちます。 NBRは、アプリケーションを認識する汎用的なデータ保護ソリューションであり、Active Directory内のファイルやオブジェクトを含め、完全な復元およびきめ細かな復旧をサポートしています。

NAKIVO Backup & Replication をお試しください

NAKIVO Backup & Replication をお試しください

無料トライアルを利用して、本ソリューションのデータ保護機能をすべてお試しください。15日間無料。機能や容量の制限は一切ありません。クレジットカードも不要です。

関連記事