削除された 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 オブジェクトの削除および復元プロセスは次のとおりです。
- オブジェクトが削除されると、そのオブジェクトはトゥームストーンになります。
- トゥームストーン オブジェクトは、 “削除済みオブジェクト” コンテナに、現在のドメインの
tombstoneLifetimeで設定された期間、保存されます。 オブジェクトがトゥームストーン(削除済みオブジェクトとも呼ばれます)になると、ほとんどの属性が失われます。 - トゥームストーンの有効期間中は、AD オブジェクトを復元できますが、その属性に記録された追加情報は一切含まれません。
- トゥームストーンの有効期間が満了すると、オブジェクトは物理的に削除され、復元することはできなくなります。
Active Directory オブジェクトのライフサイクルは、AD ごみ箱を使用せずに AD オブジェクトを復元する原理を説明するために、以下の図に示されています。
AD ごみ箱からの復元
以下の場合は状況が異なります。 turn on Active Directory Recycle Bin:
- AD オブジェクトが削除されると、そのオブジェクトの状態は”論理的に削除済み”の状態に変わります。 オブジェクトの属性は、 削除されたオブジェクトの存続期間 属性 ( msDS-deletedObjectLifetime ) で設定された期間、保持されます。この期間は、デフォルトでは リサイクルされたオブジェクトの存続期間 の期間(180 日)と同じです。 この期間中は、Active Directory から削除されたオブジェクトを復元することができます。
- isDeleted 属性は、 True に設定されます。 isRecycled 属性は、 False になります。
- 削除オブジェクトの存続期間 が満了すると、オブジェクトの状態は、 論理的に削除済み から、 リサイクルされたオブジェクト に変更されます。 リサイクルされたオブジェクトは、AD リサイクル ビンが無効になっている場合のトゥームストーン オブジェクトに似ています。
- このリサイクルされたオブジェクトは、 tombstoneLifetime 属性で定義された リサイクルされたオブジェクトの有効期間 が満了するまで、 削除済みオブジェクト コンテナ内に残ります。 デフォルトでは、この期間は 180 日間です。 の isRecycled 属性は、 True に設定されます。論理的に削除された状態でも保持されていたオブジェクト属性のほとんどは削除されます。
- のリサイクルされたオブジェクトの有効期間 ( tombstoneLifetime ) が満了すると、Active Directory のガベージコレクション機構によってリサイクルされたオブジェクトが完全にクリーンアップされ、このオブジェクトは物理的に削除されます。 オブジェクトの復元はもはや不可能です。
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 ごみ箱を有効にする
beforeAD オブジェクトを削除する前に、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 オブジェクトを復元してみましょう。 これらの操作はドメイン コントローラー上で実行します。
削除された AD ユーザーを復元するには、次の手順を実行します。
- 管理者権限(昇格された PowerShell)で PowerShell を開きます。
- 削除されたオブジェクトは、 DeletedObjects コンテナにあり、 isDeleted フラグが設定されています。次のコマンドで削除された AD オブジェクトを表示します。
Get-ADObject -IncludeDeletedObjects -Filter {IsDeleted -eq $true}
- オブジェクトを復元するには、そのオブジェクトから isDeleted フラグを削除する必要があります。 user1 を復元する必要があります。 名前が user で始まるすべてのオブジェクトを表示するコマンドを入力します。この目的のために、フィルターに以下のオプションを追加します: {Isdeleted -eq $true -and Name -like “
user*“}
以下のコマンドは、 user2 、 user3 など、削除された他のユーザーを表示する場合にも適用されます:
Get-ADObject -IncludeDeletedObjects -Filter {Isdeleted -eq $true -and Name -like "user*"}
- 必要なオブジェクトの ObjectGUID または DistinguishedName を控えておいてください。 この例では、 ObjectGUID を、 user1 に対して使用します:
4c723d90-5a05-47c3-9482-c05dc3c6201c
- 削除されたオブジェクトを復元するには、次のようなコマンドを実行します:
Restore-ADObject -Identity "GUID or DistingushedName here" -NewName "new_restore_name"
この例では:
Restore-ADObject -Identity "4c723d90-5a05-47c3-9482-c05dc3c6201c" -NewName "user1-restored"
- 必要に応じて、
-TargetPathキーを使用し、新しい場所の識別名 (DN) を設定することで、現在のオブジェクトを復元する別の場所を指定することもできます。例:
CN=Users,DC=domain,DC=net
コマンドを実行して Active Directory オブジェクトを復元した後、 user1 は、 Users カタログや、 Group-A (このユーザーが以前所属していた場所)には表示されません。
これは、AD リサイクル ビンを使用せずに Active Directory オブジェクトを削除すると、たとえオブジェクト自体が復元されたとしても、ほぼすべてのオブジェクト属性が失われるためです。
復元されたADオブジェクト user1-restored は、 の”ドメインユーザー” グループ内に確認できます。ユーザーのログオン名は、Windows 2000以前の形式でのみ保存されています。 user1-restored アカウントは無効な状態になっています。重要な点は、元の SID が保持されており、このユーザーに関連付けられたファイルやフォルダの NTFS アクセス権は引き続き有効であるということです。
注: トゥームストーンから削除されたオブジェクトを復元する代わりに、新しい 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
- ツールをダウンロードし、ZIP アーカイブの内容を特定のフォルダー(例: C:programsadrestore
- )に解凍します。PowerShell でこのディレクトリに移動します:
cd c:programsadrestore
PowerShell を管理者として実行します。
- 削除された user2 に関する情報を、管理者権限の PowerShell で正確なユーザー名を指定して表示します:
Get-ADObject -Filter 'SAMAccountName -eq "user2"' -IncludeDeletedObjects
Deleted: True これにより、このユーザーが削除されていることが確認できます。
CN=Deleted Objects は、オブジェクト(ユーザーアカウント)が Deleted Objects コンテナに移動されたことを意味します。
- ObjectGUID user2 の値をメモします:
c6c121a3-d664-4d71-a6ef-9ad26b833fe6
-
adrestoreを使用してオブジェクトを復元するコマンドを入力し、必要なユーザーの ObjectGUID を指定します:
.adrestore -r c6c121a3-d664-4d71-a6ef-9ad26b833fe6
y と入力し、 Enter を押して確認し、続行します。
- 削除されたオブジェクト( user2 )が復元されたら、 Active Directory ユーザーとコンピューター ウィンドウでこのユーザーを確認してください。
結果は最初の例と同様です。 user2 は、属性やグループメンバーシップなどの追加データなしで復元されます。
例 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 エントリの表示や編集を行うことができます。
- ”
Start > Run“をクリックします(または”Win+R“を押します)。 - ”
ldp“の”Run” プロンプトに” “と入力し、”Enter“を押します。
- Ldpのメインウィンドウで”
Connection > Connect“をクリックします。
- ” “の”Connect” ウィンドウで必要なパラメータを設定します。
Server: AD DCサーバーのIPアドレスまたは名前を入力します。
Port: デフォルトでは389または636が使用されます。
” OK“をクリックします。
- Ldpのメインウィンドウで”
Connection > Bind“をクリックします。
- ドメインコントローラーにドメイン管理者としてログインしていることを前提として、最初のオプション”
Bind as currently logged on user“を選択します。
2番目のオプション( “Bind with credentials” )を使用し、ユーザー名、パスワード、および接続先のドメインを設定することもできます。
” OK “をクリックして続行します。
- 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“をクリックします。
- Ldpのメインウィンドウで”
View > Tree“をクリックします。
” “の”BaseDN” を入力します。ドメイン名は ID.TEST で、” “の”BaseDN” は DC=ID,DC=TEST
です。” OK “をクリックして続行します。
- ツリーをナビゲートして、復元が必要な削除済みオブジェクトに移動します(この例では、 user3 が、ADリサイクルビンから復元したいオブジェクトです)。ドメインを展開し、 Deleted Objects コンテナを展開します。
注: 実行された操作の結果は、ウィンドウの右ペインで確認できます。
- オブジェクト(この場合は user3 )を右クリックし、コンテキストメニューの
Modifyをクリックします。
- DN は、すでに自動的に選択されています。
” isDeleted “を” “の”Edit Entry Attribute” フィールドに入力します。
” Delete “を” “の”Operation” オプションから選択します。
このウィンドウの” Enter “ボタンをクリックします。
- ”
distinguishedName“を” “の”Values” フィールドに入力します。
オブジェクトを復元するための値を入力します。例: CN=user3,OU=Users,DC=ID,DC=test
復元用のカスタム DN 位置の値を入力することもできます。
” Replace “操作を選択します。
この Enter の ウィンドウのインターフェースで、 ボタンをクリックします。
Synchronous および Extended のチェックボックスを選択します。その後、 Runをクリックします。
この方法で 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 リサイクル ビンは無効になっています。
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
- サーバー マネージャーを開きます。[
Start] をクリックし、server managerと入力するか、Win+Rを押します。[ ] の [Run] ウィンドウで、 を開き、dsac.exeと入力して [Enter] をクリックします。 - [
Tools > Active Directory Administrative Center] のサーバー マネージャー ウィンドウで、 に移動します。
- 左ペインでフォレストルートドメインを選択します。この例では、
ID (local)を選択します。 - 右ペインの
Enable Recycle Binをクリックします。
- 警告を確認し、
OKの ウィンドウで をクリックして続行します。
- Active Directory 管理センターのウィンドウを更新する必要があります。管理センターウィンドウの右上隅にある
Refreshボタンをクリックします。 - その後、
Enable Recycle Binオプションがグレー表示(無効)になります。 - ドメインをクリックして内容を展開すると、メニューに”
Deleted Objects“コンテナが表示されます。
- PowerShell で次のコマンドを実行し、Active Directory リサイクル ビンが有効になっていることを確認してください。
Get-ADOptionalFeature "Recycle Bin Feature" | select-object name,EnabledScopes
機能に関する詳細情報を表示するには、次のコマンドを使用します。
Get-ADOptionalFeature -filter *
Active Directory リサイクル ビンからのユーザーの復元
以前の例で他のユーザーに対して行ったのと同様に、 id.test ドメイン内の Group-A に所属する user4 を削除してみましょう。
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 は、関連するすべてのデータと属性が保持された状態で、Active Directory オブジェクトとして同じ場所に復元されました。グループのメンバーシップは保持されており、 user4 は、復元後も Group-A のメンバーとなっています。
PowerShell で Active Directory ごみ箱から削除された AD ユーザーを復元するコマンドは次のとおりです。
Get-ADObject -Filter {displayName -eq "user4"} -IncludeDeletedObjects | Restore-ADObject
user4 を、サーバー上で復元したいオブジェクトに置き換えてください。
したがって、Active Directory ごみ箱は、 Active Directoryのバックアップを実行していない場合に役立ちます。
AD ごみ箱の保持期間を変更する方法
Active Directory ごみ箱の設定を変更することで、Active Directory 内で削除されたオブジェクトをより長期間復元できるようにすることができます。 ここでは、以下の 2 つの設定の変更について説明します。
- トゥームストーンの有効期間 ( tombstoneLifetime )
- 削除済みオブジェクトの有効期間 ( 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 "
- Windows Server 2019 に標準でプリインストールされているツール” ADSI Edit “を開きます。
このツールは、
“C:ProgramDataMicrosoftWindowsStart MenuProgramsAdministrative Tools“
または次のパスからアクセスできます:
%SystemRoot%system32adsiedit.msc
Start をクリックし、 ASDI Edit と入力すると、ツールをすばやく実行できます。
- ウィンドウ内の
ADSI Editを右クリックし、コンテキストメニューからConnect toを選択します。
- の [接続設定] ウィンドウで、以下のパラメーターを設定します:
- 名前:
Configuration - 接続ポイント :
Select a well known Naming Context>Configuration - コンピュータ:
Default
OK をクリックして、これらの設定を適用します。
- Active Directory の構成パラメータを含むツリーが、 ADSI Edit ツールのメインウィンドウに表示されます。
-
Configuration > CN=Configuration > CN=Services > CN=Windows NT > CN=Directory Service - に移動し、
CN=Directory Serviceを右クリックして、コンテキストメニューからPropertiesをクリックします。
- プロパティの一覧を下にスクロールして、
tombstoneLifetimeを見つけます。前に確認した通り、デフォルト値は180日です。 -
tombstoneLifetimeをダブルクリックして、設定値を編集します。
- 新しい値(例:
365)を入力し、OKをクリックして設定を保存します。
注: 値を null <not set>に設定した場合、tombstone の有効期間は自動的に 60 日間に設定されます。これは、null 値に対するこの期間がシステム構成にハードコードされているためです。
- 新しい値が設定されました。
-
OKをクリックして設定を保存し、Propertiesウィンドウを閉じます。
上記で説明した一連のコマンドを使用して、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'}
前のセクションで説明した適切な一連のコマンドを使用して、更新されたトゥームストーンの有効期間を確認します。
削除済みオブジェクトの有効期間を変更する方法
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 日)です。
ネイティブ 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人のユーザーが登録されています。
バックアップから削除されたADオブジェクトを復元する
NAKIVOバックアップソリューションのWebインターフェースを開きます。
Active Directoryドメインコントローラーのバックアップを含むVMware vSphere VMバックアップジョブを選択します。
[ Recover > Microsoft Active Directory objects] をクリックします。
Microsoft ADサーバーのオブジェクト復元ウィザードが開きます。
Backup。選択したバックアップから必要な仮想マシンを選択します。次に、復元ポイントを選択します。 この例では、バックアップには AD サーバーを含む 1 台の仮想マシン(VM 名は Blog-Win19-DC )が含まれており、最新の復元ポイントを選択します。
各ステップで [ Next ] をクリックして続行します。
Recovery Server。復元サーバーの設定を選択します:
Recovery Server: 削除された AD オブジェクトを復元する先として、復元サーバーを選択します。これらのオブジェクトは同じ仮想マシンに復元します。リストを展開して、インベントリからサーバーまたは仮想マシンを選択できます。Server hostname or IP: 選択した VM またはサーバーのホスト名または IP アドレスを入力します。Username: ドメイン管理者、またはドメイン内で適切な権限を持つその他のユーザーのユーザー名を入力します。この例では、ユーザー名は domain1administratorPassword: 指定したユーザーのパスワードを入力します。
” Test Connection“をクリックします。 テストに合格した場合は、 Nextをクリックします。
注: AD オブジェクトを復元する対象の Windows Server マシンで、iSCSI イニシエーター サービスが実行されていることを確認してください。そうでない場合、” “iSCSI Initiator” サービスがリカバリ サーバー上で実行されていません”というエラーが表示されます( )。この場合、接続テストは失敗します。
Microsoft iSCSI イニシエーター サービスは、”コンピューターの管理”ウィンドウ(Computer Management > Services and Applications > Services )から開始できます。
別の方法として、PowerShell からサービスを開始することもできます:
- iSCSI イニシエーター サービスの状態を確認します:
Get-Service -Name MSiSCSI
- iSCSI サービスを開始します:
Start-Service msiscsi
- サービスの起動タイプを”自動”に設定します:
Set-Service -Name MSiSCSI -StartupType Automatic
- iSCSI イニシエーター サービスが開始されているか確認します:
Get-Service -Name MSiSCSI
Objects。復元したい AD オブジェクトを選択します。高度な自動化により、複数のオブジェクトを一度に復元することが可能です。 削除された AD アカウントを復元します。
注: iSCSI サービスが開始されていない場合、 “リカバリ ポイントを読み込めません” というメッセージが表示されることがあります。Linux マシン(たとえば、バックアップ リポジトリまたはトランスポーターがインストールされているマシン)で iSCSI サービスを開始するには、次のコマンドを実行します:
/etc/init.d/iscsid start
Options。この手順で AD リカバリ オプションを選択します。利用可能なすべてのオプションを以下に示します。
Recovery type:- 元の場所に復元
- エクスポート
Recovery of user object:- ユーザーを無効にする
- 次回のログオン時にパスワードの変更をユーザーに要求する
Overwrite behavior:- 復元された項目が存在する場合、その項目名を変更する
- 復元された項目が存在する場合、その項目をスキップする
- 元の項目が存在する場合、その項目を上書きする
この AD 復元の例では、以下のスクリーンショットに示すように、項目を元の場所に復元し、オプションを選択しています。
” Recover“をクリックし、通知を確認してから” Proceed“をクリックします。
Finish。Active Directory オブジェクトの復元が開始されました。 復元処理が完了するまでお待ちください。
この方法を使用して AD オブジェクトの復元処理が完了したら、Windows Server 2019 で “Active Directory ユーザーとコンピューター” を開き、削除された AD 組織単位 ( unit1 ) が子オブジェクトとともに復元されているかどうかを確認できます。
以下のスクリーンショットにあるように、 unit1 に保存されていたすべてのユーザーが復元されています。グループメンバーシップを含む、それらの属性のほとんどは保持されています。 あとはパスワードをリセットし、これらのユーザーアカウントを有効にするだけです。
バックアップからの高度な AD 復元
高度にカスタマイズされた設定を使用して、バックアップから削除された Active Directory オブジェクトを復元する高度な Active Directory 復元を行う必要がある場合があります。たとえば、バックアップから AD オブジェクトをカスタムサーバーにエクスポートし、パラメータを編集して、必要な場所にインポートすることができます。
NAKIVO のユニバーサルデータ保護ソリューションを使用すれば、このようなタスクを実行できます。 例を見てみましょう。
バックアップからのADオブジェクトのエクスポート
Webインターフェースでのワークフローの最初の手順は、この記事の前のセクションで説明したものと同じです。オブジェクト復元ウィザードの3番目の手順に直接進みましょう。高度なAD復元ワークフローの違いは、この手順から始まります。
Objects。この例では、復元する他のActive Directoryオブジェクトを選択してみましょう。削除されたADユーザーを復元したいとします。 Users を参照して、 user10 を選択します。 Users ディレクトリから、バックアップから復元する複数のADオブジェクトを選択できます。
Options。復元したい選択したActive Directoryオブジェクトをエクスポートするように選択します。オブジェクトを復元サーバーのローカルフォルダーにエクスポートしたいので、このステップでの設定はすべて以下の通りです。
Recovery type: エクスポートExport location: 復旧サーバー上のローカルフォルダLocal path: C:TempAD-RecoveryOverwrite behavior: 復旧対象の項目が既に存在する場合、その項目の名前を変更する
” Recover “および” Proceed “をクリックして続行します。
復旧ジョブが完了し、選択した Active Directory オブジェクトが宛先へエクスポートされるまで待ちます。
エクスポート処理が完了すると、” “C:TempAD-Recovery フォルダ内に Active Directory オブジェクトを確認できます。各 AD オブジェクトは個別の LDIF ファイルとしてエクスポートされます。 
LDIFファイルは、エクスポートされたActive Directoryオブジェクトの情報を含む編集可能なテキストファイルです。削除されたADユーザー、具体的にはuser10を復元してみましょう。以下のスクリーンショットに、LDIFファイルの内容の例があります。
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ステップで選択してください。
役割と機能の追加ウィザードの間に行います。
Certification AuthorityをRole Services stepで選択します。
ウィザードのすべての手順を完了した後、インストールされた役割のポストデプロイメント構成を実行する必要があります。
標準のAD CS構成ウィザードの手順に従います。
- 資格情報。ドメイン管理者の資格情報を入力します(私たちのケースではdomain1 administrator)
- ロールサービス。認証局が選択されていることを確認します。
- セットアップの種類。Enterprise CAを選択します。
- CAの種類。ルートCAを選択します。
- プライベートキー。新しいプライベートキーを作成します。
- 暗号化。デフォルト設定を使用できます。
- CAの名前。CAの名前がドメインに正しいことを確認します。
- 証明書の有効期間。例えば、5年の期間をセットしてください。
- 証明書データベース。デフォルト設定を使用して問題ありません。
AD CS構成ウィザードを完了した後、変更を反映するためにWindowsサーバーを再起動します。
ADの復旧を終える
これで、Windows PowerShellのコマンドラインLdifdeツールを使用して、バックアップからエクスポートした削除されたオブジェクトをActive Directoryにインポートして復元することができます。
- PowerShellを管理者として開きます。
- 復元された項目のLDIFファイルが格納されているディレクトリに移動します:
cd C:TempAD-Recovery
- 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 コンソールの出力例を、以下のスクリーンショットに示します。
注: ldifde ツールを使用して Active Directory オブジェクトを手動でエクスポートする場合は、フィルターを使用してください。 管理者が AD オブジェクトのすべての属性をインポートできるわけではありません。一部の属性は保護されており、これらの属性をインポートする権限はシステムのみに属しています。この場合、LDIF ファイルからオブジェクトをインポートしようとすると、次のようなエラーメッセージが表示されることがあります。 この属性はセキュリティアカウントマネージャー (SAM ) が所有しています、 問題 5003 (WILL_NOT_PERFORM) など。
ユーザーやグループなどのオブジェクトをすべての属性とともにエクスポートした場合、インポートする前に、.LDIF ファイルから objectGUID 、 objectSid 、 sAMAccountType などの一部の属性を、該当する行を削除して手動で削除する必要がある場合があります。 そうしないと、 ldifde ツールを使用してオブジェクトをインポートできません。
専用のバックアップソリューションを使用せずに、 ldifde ツールのエクスポート/インポート機能を使用してバックアップや復元を行う場合は、これらの点に留意してください。Active Directory サーバー全体または仮想マシンを保護し、AD オブジェクトの完全復元やきめ細かな復元を迅速かつ容易に行えるようにするには、専用のバックアップソリューションを使用することをお勧めします。
結論
Active Directory およびそこに含まれるすべての項目を含むデータやアプリケーションを確実に保護する方法は、適切なデータバックアップを定期的に実行し、合理的な保存期間ポリシーに基づいてバックアップを保管することです。この場合、専用のバックアップソリューションが役立ちます。 NBRは、アプリケーションを認識する汎用的なデータ保護ソリューションであり、Active Directory内のファイルやオブジェクトを含め、完全な復元およびきめ細かな復旧をサポートしています。



























































