16편째에서 액티브 디렉터리의 암호 정책이 이제 도메인 단위로 부여할 수 있는 것이 아니라, 사용자 및 그룹 단위로 부여가 가능하다는 내용의 포스팅을 한 적이 있습니다. 바로 Fine Grained Password Policies이었습니다. 오늘은 액티브 디렉터리의 스냅샷(Snapshot) 기능에 대해서 알려드릴까 합니다.

지금까지의 액티브 디렉터리는 Microsoft 인프라내에서 Identity 관리, 인증, 중앙 집중적 인프라 관리의 핵심적인 역할을 해오고 있으며, 앞으로도 계속 이러한 Microsoft Infra의 심장부 역할을 하게 됩니다. 제가 엔지니어를 할 시절에 몇가지 아쉬웠던 점은..

1. 액티브 디렉터리 복원시, 언제 날짜의 데이터가 내가 원하는 복구 데이터인지 알기가 애매했습니다.
2. 특정 시점의 그룹의 멤버쉽 정보를 알기가 어려웠습니다.
3. 액티브 디렉터리의 권위적인 복원(Authorative Restore)를 할 경우에 대한 예상
4. 특정 시점에서의 개체의 상태 정보 파악

이러한 아쉬웠던 점을 Windows Server Code Name Longhorn에서는 스냅샷(Snapshot)이라는 기능을 통해서 제공합니다. 해당 스냅샷은 Windows내 Volume Shadow Copy 서비스에 기반하며, 특정 시점의 액티브 디렉터리 데이터베이스(NTDS.DIT) 파일에 대해 스냅샷을 찍어주고, 이를 서비스로 바인딩하여, 관리자는 그 시점의 액티브 디렉터리 상태를 알 수 있습니다.

자.. 그럼 어떻게 스냅샷을 찍을까요?

1. Windows Server Code Name Longhorn의 도메인 컨트롤러에서 명령어 프롬프트를 여시고 ntdsutil 명령어를 입력합니다.
2. Snapshot이라고 입력하여 Snapshot 서브영역으로 들어갑니다. 당연히 ?를 입력하시면 도움말 정보가 나옵니다.
3. 이제 우리가 스냅샷을 찍을 액티브 디렉터리 or ADAM(Longhorn에서는 Active Directory Lightweight Directory Service라고 부릅니다.)을 선택합니다. 명령어는 Activate Instance NTDS 입니다.
4. Create라고 입력합니다. 그럼 스냅샷이 찍어지고, 스냅샷의 GUID 값이 리턴되게 됩니다.
image

그럼 이제 스냅샷을 찍어둔 데이터베이스를 바인딩해 보겠습니다.

1. 원하는 시점의 정보를 얻기 위해서는 ntdsutil내 Snapshot 서브 영역에서 정보를 확인해야 합니다. 바로 list all이라고 입력합니다.
image

2. Snapshot 정보를 마운트하여야 합니다. 마운트를 위해서는 mount라는 명령어를 사용하는데, 이 경우에 바로 GUID값이 필요합니다. 마운트 후, 스냅샷이 C:\$SNAP_시간_VOLUMEC$\에 마운트되었다는 메시지를 보실 수 있습니다.
image

3. Windows 탐색기를 통해 실제, 스냅샷이 마운트되어진 것을 확인할 수 있습니다.
image

그럼 이러한 스냅샷내 저장된 데이터베이스를 읽기 전용 디렉터리스 서비스로 서비스 구동을 시켜줘야 합니다. 이 경우엔 ntdsutil을 사용하지 않고, dsamain.exe라는 다른 유틸리티를 사용합니다.
image

차후 서비스를 종료할 땐 가볍게 Ctrl + C를 이용하시면 됩니다. 각종 포트 넘버는 알아서 서비스하시면 됩니다. :) 자 그럼 이제 이러한 데이터베이스 정보를 어디서 얻어내야 할까요? 바로 ADSIEDIT.MSC를 활용합니다. Windows Server Code Name Longhorn 부터는 액티브 디렉터리 관리 도구를 설치하시게 되면 2003까지의 Support Tool과 Resource Kit에 있는 각종 유틸리티가 기본적으로 설치가 됩니다.

1. ADSIEDIT.MSC를 실행합니다.
2. Connect to 메뉴를 이용하여, 설정한 서비스로 접근합니다.

image image

3. 예전 버전의 액티브 디렉터리 상태를 확인합니다.

작업을 마친 후, dsamain.exe를 통해 서비스하던 스냅샷 서비스는 Ctrl + C를 통해 종료하시고, 마운트한 데이터베이스 스냅샷도 dismount GUID를 이용하셔서 해제하시면 됩니다. 현재 마운트된 스냅샷의 정보는 list mounted를 이용하시면 보실 수 있습니다.
image

액티브 디렉터리 스냅샷 기능은 액티브 디렉터리 관리자에게 상당히 유용한 기능으로 이용될 것입니다. 데이터를 복구할 경우, 해당 개체의 DN 값이라던가, 특정 시점의 개체 상태를 알아내는 것.. 무엇보다 액티브 디렉터리를 복구 모드로 들어가지 않고, 다시 말해 서비스를 구동하는 도중에 상태를 확인할 수 있다는 것도 매력적입니다. :)

+ Recent posts