Active Directoryでは、過去のデータベースの状態を保存できるスナップショット機能がある。
スナップショットを作成しておくと、その時点の属性情報を確認できるので、廃棄済みオブジェクトやリサイクル済みオブジェクトを回復した後、消去されてしまった属性を主導で再設定する際に便利。
スナップショットは過去のある一時点のデータベースを参照するだけなので、属性を自動的に取り込むようなことはできない。
Active Directoryデータベースのスナップショットの作成から接続までの流れは、以下の通り。
① スナップショットの作成
② スナップショットのマウント
③ スナップショットの公開
④ スナップショットへ接続
① スナップショットの作成 & ② スナップショットのマウント
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
Microsoft Windows [Version 10.0.14393] (c) 2016 Microsoft Corporation. All rights reserved. C:\Users\Administrator>ntdsutil ntdsutil: activate instance ntds アクティブ インスタンスが "ntds" に設定されました。 ntdsutil: snapshot snapshot: create スナップショットを作成しています... スナップショット セット {973b3949-58c2-40e0-8f8a-da15ce32cbdc} が正常に生成されました。 snapshot: snapshot: snapshot: list all 1: 2018/08/08:03:04 {973b3949-58c2-40e0-8f8a-da15ce32cbdc} 2: C: {d4cd4be8-33c4-4a59-8e2c-7876da2ea141} snapshot: snapshot: mount 1 スナップショット {d4cd4be8-33c4-4a59-8e2c-7876da2ea141} が C:\$SNAP_201808080304_VOLUMEC$\ としてマウントされました。 snapshot: quit ntdsutil: quit |
③ スナップショットの公開
1 2 3 4 5 6 |
Microsoft Windows [Version 10.0.14393] (c) 2016 Microsoft Corporation. All rights reserved. C:\Users\Administrator>dsamain /dbpath c:\$SNAP_201808080304_VOLUMEC$\Windows\NTDS\ntds.dit /ldapport 10000 EVENTLOG (Informational): NTDS General / サービス コントロール : 1000 Microsoft Active Directory ドメイン サービスのスタートアップが完了しました |
スナップショット公開時のポートは389以外を指定する。通常のActive Directoryデータベースへの接続は389おldapで行われているから。
そういえば、以前のプロジェクトでAD移行担当だったけど、移行時にテンポラリOU作ってそこに削除対象のオブジェクトを突っ込んで、安定稼働したら消すっていうのをやってた。
消す前にこういうスナップショット取っておくといいんだろうなって思いました。