Netwrix 1Secure는 데이터와 아이덴티티 전반에 걸쳐 통합된 가시성을 제공합니다 - 14일간 무료로 전체 액세스가 가능합니다.무료 평가판 시작

리소스 센터블로그

Active Directory 개체 속성을 복원하는 방법

Active Directory 개체 속성을 복원하는 방법

Aug 12, 2025

Active Directory (AD)는 데이터베이스이자 여러 서비스의 집합으로, IT 인프라 리소스에 대한 중앙 집중형 관리를 제공합니다. 이 서비스는 사용자를 업무를 수행하는 데 필요한 리소스와 연결합니다. 따라서 기술자는 하드웨어 장애, 사이버 공격, 스크립팅 실수 및 기타 문제로 인해 수정되거나 삭제된 AD 속성을 신속하게 확인하고 복구할 수 있어야 합니다. 그렇지 않으면 사용자는 이전과 동일한 리소스에 액세스할 수 없게 되어 생산성 손실, 비효율, 불만족스러운 고객, 그리고 손상된 브랜드 이미지로 이어질 수 있습니다.

엄선한 관련 콘텐츠:

이 가이드를 읽고 Active Directory 특성을 마지막으로 저장된 구성으로 복원하는 방법을 알아보세요. 이 페이지에서는 AD 특성을 롤백하고 복구하기 위한 PowerShell 팁과 요령도 함께 다룹니다.

다음과 같은 경우 AD 특성을 롤백하거나 복구할 수 있어야 합니다.

  • IT 팀의 누군가가 실수로 인해 하나 이상의 AD 개체의 특성에 영향을 주는 경우. 예를 들어, IT 기술자가 실수로 잘못된 PowerShell 스크립트를 사용하는 상황을 가정해 보겠습니다. 특정 AD 사용자 계정에 우편 주소 정보를 추가하는 대신, 도메인에 있는 모든 사용자 개체의 address 특성 현재 값을 별표(*)로 바꿉니다. 올바른 주소를 복원하려면 이러한 변경 사항을 롤백해야 합니다.
  • 악의적인 행위자가 AD 네트워크에 액세스해 AD 개체의 특성을 삭제하거나 편집하는 경우. 모든 것이 정상적으로 유지되도록 특성을 롤백하거나 복구해야 합니다.

Active Directory Recycle Bin을 사용해 AD 특성을 복구할 수 있나요?

한마디로 말하면, 아니요.

Active Directory Recycle Bin은(는) 일부 삭제된 Active Directory 개체를 짧은 기간 동안 보관하도록 설계되었습니다. 하지만 Active Directory Recycle Bin은 수정된 AD 특성을 저장하지 않으므로, 특성 복구 프로세스에 도움이 되지 않습니다.

기술적으로는 원치 않는 변경이 어떤 것이든 빠르게 인지할 수 있고, 복제를 통해 아직 그 변경을 받지 않은 도메인 컨트롤러를 찾아 해당 컨트롤러의 개체를 권한(Authoritative) 있게 만드는 절차를 구성해 볼 수도 있습니다. 하지만 그렇게 하는 것은 비현실적입니다. 마치 “로또 당첨”이라고 낙서한 종이쪽지 하나를 바탕으로 은퇴 저축 계획을 세우는 것과 같습니다.

AD 특성의 백업을 확보하려면 어떻게 해야 하나요?

Active Directory는 개체의 특성 값에 대한 기록을 유지하지 않으므로, 필요할 때 특성을 복구하거나 롤백할 수 있는 첫 단계는 이를 제공하는 무언가를 찾는 것입니다. 다행히도 Active Directory 시스템 상태 백업과 관련해서는 사용할 수 있는 백업 도구가 부족하지 않습니다.

Windows Server Backup (WBAdmin)

한 가지 방법은 Microsoft Windows Server Backup (WBAdmin)을 사용하는 것입니다. 컴퓨터에 Windows Server Backup 도구를 설치하면 wbadmin.exe 명령줄 도구가 설치됩니다. 또한 Windows Server Backup용 Windows PowerShell cmdlet과 Windows Server Backup MMC 스냅인에 액세스할 수 있게 해줍니다. 이 세 가지 옵션은 단일 기반 애플리케이션을 활용하는 서로 다른 방식일 뿐이므로, 그중 어떤 방법으로 생성한 백업이든 나머지 모두에서 확인할 수 있습니다.

관리 권한으로 권한이 상승된 명령 프롬프트를 열면 WBAdmin.exe에 액세스할 수 있습니다. 이를 수행하려면 시작 을 클릭한 다음 명령 프롬프트 를 마우스 오른쪽 버튼으로 클릭하고 관리자 권한으로 실행 를 선택합니다.

Image

WBAdmin과 관련해 꼭 알아두어야 할 중요한 주의사항이 하나 있습니다. 특정 폴더에 백업을 저장하도록 구성하면 백업의 가장 최근 복사본만 유지되며, 이후에 수행한 백업이 이전 백업의 내용을 덮어씁니다.

이 문제를 방지하기 위해 아래 스크립트는 현재 날짜를 YYYYMMDD 형식으로 사용해 폴더를 생성한 다음, WBAdmin의 START BACKUP 명령을 사용하여 해당 폴더로 Active Directory ntds.dit 파일을 백업합니다:

      @echo off
set backupRoot=\FILESHARENtdsBackups
set backupFolder=%date:~-4,4%%date:~-10,2%%date:~7,2%
set backupPath=%backupRoot%%backupFolder%
mkdir %backupPath%
wbadmin start backup -backuptarget:%backupPath% -include:C:WindowsNTDSntds.dit -quiet
      

이 작업의 결과에는 ntds.dit 파일의 Volume Shadow Copy Service(VSS) 스냅샷이 포함됩니다.

이 방식의 단점은 결과로 생성되는 파일이 ntds.dit 파일보다 상당히 크다는 점입니다. 예를 들어 아래 스크린샷은 20MB 크기의 ntds.dit 파일에 대한 백업 크기를 보여줍니다. 이 추가 디스크 사용량은 일부 실험실 환경에서는 큰 문제가 아닐 수 있지만, 운영 환경에서는 제대로 확장되지 않을 수 있습니다.

Image

Ntdsutil.exe

Microsoft에서 제공하는 또 다른 옵션은 Ntdsutil.exe로, Windows Active Directory database에 액세스하고 관리하기 위한 명령줄 도구입니다. Ntdsutil은 위험할 정도로 강력하므로, 이를 사용하는 방법을 배우는 장소로 운영 환경은 적합하지 않습니다. 하지만 이는 주로, 매우 유용한 명령어 모음이 포함되어 있기 때문입니다.

예를 들어 Ntdsutil에는 실행 시점의 Active Directory 상태를 캡처하는 SNAPSHOT 명령이 있습니다:

Image

이 접근 방식의 가장 큰 단점은 Ntdsutil 백업이 Active Directory를 호스팅하는 볼륨에 기록된다는 점인데, 이는 이상적이지 않습니다.

WBAdmin과 Ntdsutil.exe를 사용해 속성을 복원하는 방법은 무엇인가요?

이제 WBAdmin과 Ntdsutil.exe를 사용해 단계별로 살펴보겠습니다. 백업 안에 숨겨진 ntds.dit 파일을 마운트하기 위해 Active Directory Domain Services Database Mounting Tool(DSAMAIN)을 사용하여 LDAP로 이를 탐색할 수 있도록 하겠습니다.

1. 먼저 WBAdmin이 생성한 VHD 이미지 중 하나를 찾아 마운트한 다음, 해당 이미지의 기본 파티션에 드라이브 문자를 할당해야 합니다.

Image

2. 다음으로 마운트된 백업에서 ntds.dit 파일의 경로를 찾고, 관리자 권한으로 명령 프롬프트를 연 다음 아래 명령을 사용해 ntds.dit 파일을 마운트합니다:

dsamain -dbpath “E:WindowsNTDSntds.dit” -ldapport 10389

Image

명령 프롬프트를 닫으면 DSAMAIN이 중지되므로, 시스템 상태 복원을 완료할 때까지 열어 두었는지 확인하세요.

3. WBAdmin 백업을 마운트했으므로, Ntdsutil로 생성한 스냅샷을 마운트하겠습니다. 이를 위해 관리자 권한으로 새 명령 프롬프트를 열고, snapshot 명령을 사용해 백업 목록을 확인한 다음 마운트할 백업을 선택하고 Ntdsutil에서 지정한 드라이브 경로 위치를 복사합니다:

Image

4. 다음으로 Ntdsutil이 할당한 경로 아래에 있는 ntds.dit 파일의 경로를 찾고, 관리자 권한으로 또 다른 명령 프롬프트를 열어 아래 명령을 사용해 ntds.dit 파일을 마운트합니다:

      dsamain -dbpath “C:\$SNAP_201903261110_VOLUMEC$\Windows\NTDS\ntds.dit” -ldapport 20389
      
Image

5. 그다음으로, 믿을 수 있는 테스트 사용자 Delete Q. Me 의 Description 속성을 변경합니다.

6. 이제 PowerShell을 열고 Get-ADUser cmdlet을 사용해 테스트 사용자를 확인할 수 있습니다. Active Directory는 기본적으로 389 포트에서 수신하며, 백업은 10389 및 20389 포트에 마운트했습니다. 선택적 Server 매개변수를 사용하면, 마운트된 백업 두 개와 실제(라이브) 환경에서 테스트 사용자가 어떤 모습인지 확인할 수 있습니다.

Image

보시다시피 Description 속성의 현재 값은 “Oops”이며, 두 백업 모두 이전 값인 “Demo User Account”를 포함하고 있습니다.

7. 이제 PowerShell의 Get-ADUser cmdlet을 사용해 이 속성을 백업 중 하나에서 캡처한 값으로 복원할 수 있습니다. 마운트된 백업 중 하나에서 오브젝트 사본을 가져오면, 해당 오브젝트 사본에 들어 있는 속성을 사용해 라이브 오브젝트의 속성 값을 설정할 수 있습니다:

      $UserBackup = Get-ADUser -Identity dqme -Properties Description -Server dc01:10389

Set-ADUser -Identity dqme -Description $UserBackup.Description -Server dc01:389
      
Image

Description 속성의 값이 마운트된 백업에서 캡처된 값으로 복원되었음을 확인할 수 있습니다.

겉보기에는 간단해 보이지만, 실제로는 특정 개체에 대해 특정 속성 1가지만 변경하는 한 가지 실험실(랩) 과제를 수행한 것이었습니다. 또한 복구 작업에 필요한 정보가 들어 있는 백업이 무엇인지도 알고 있었습니다. 하지만 실제 환경의 복구 시나리오에서는 특히 서비스를 즉시 복구해야 하는 상황이라면 이 과정이 상당히 불편해질 수 있습니다.

Netwrix 솔루션으로 Active Directory 속성을 복구하세요

WBAdmin 및 Ntdsutil.exe 같은 도구를 사용해 AD 속성을 복구하는 것은, 리소스나 시간, 에너지가 충분하지 않다면 특히 부담이 될 수 있습니다.

다행히도 AD 속성을 복구하는 빠르고 쉬운 방법이 있습니다 — Netwrix’s end-to-end Active Directory Security Solution. 강력하고 포괄적이며 다양한 기능이 가득한 이 도구는 원치 않는 AD 삭제 및 변경으로부터 신속하게 롤백을 수행합니다. 이를 통해 업무 연속성을 보장하고 고객 만족도를 높일 수 있습니다.

FAQ

삭제된 Active Directory 사용자를 모든 속성(어트리뷰트)과 함께 복원하는 방법은 무엇인가요?

삭제된 AD 사용자를 모든 속성(어트리뷰트) 세트와 함께 복원해야 할 때, 접근 방법은 Active Directory Recycle Bin이 활성화되어 있는지에 따라 달라집니다. 활성화되어 있다면 PowerShell을 사용해 사용자를 원래의 모든 속성 그대로 복원하세요:

      Get-ADObject -Filter 'DisplayName -eq "Username"' -IncludeDeletedObjects | Restore-ADObject
      

이 방법은 데이터 손실 없이 그룹 구성원 자격, 권한, 그리고 사용자 지정 속성을 그대로 유지합니다.

AD Recycle Bin을 사용할 수 없는 경우에는 Ntdsutil.exe 같은 도구를 최근 시스템 상태 백업과 함께 사용해 권한(Authoritative) 복원을 수행해야 합니다. 이 과정은 도메인 컨트롤러를 오프라인으로 전환하고 백업에서 복원하는 것을 의미하므로, 일부 최근 변경 사항이 손실될 수 있습니다. 핵심은 정기적인 백업을 유지하고, 권한 복원이 특정 개별 개체뿐 아니라 전체 디렉터리에 영향을 준다는 점을 이해하는 것입니다. Data security that starts with identity means 복원 중에 사용자 속성의 무결성을 완전하게 유지하는 것이 액세스 제어와 보안 경계를 보존하는 데 매우 중요하다는 뜻입니다.

Active Directory Recycle Bin이 활성화되어 있지 않을 때는 어떻게 해야 하나요?

AD Recycle Bin을 사용하지 않으면 복구 옵션이 더 복잡해지지만 불가능한 것은 아닙니다. 기본 경로는 삭제가 발생하기 전에 가져온 시스템 상태 백업을 사용해 Ntdsutil.exe로 권한 있는(Authoritative) 복구를 수행하는 것입니다. 이를 위해 도메인 컨트롤러를 Directory Services Restore Mode로 부팅하고 백업에서 AD 데이터베이스를 복원해야 합니다.

권한 있는 복구 프로세스는 최신 변경 사항을 이전 백업 데이터로 덮어쓰므로, 백업 이후에 수행된 디렉터리 수정 사항은 모두 손실됩니다. 그래서 선제적 백업 전략이 중요한 것입니다. 볼 수 없는 것은 관리할 수 없고, 백업하지 않은 것은 복원할 수 없습니다. 향후 보호를 위해 PowerShell을 사용해 AD Recycle Bin을 즉시 활성화하세요:

      Enable-ADOptionalFeature -Identity "Recycle Bin Feature" -Scope ForestOrConfigurationSet
      

이 단계는 복잡한 오프라인 절차에 의존하던 복구 역량을 간단한 PowerShell 명령으로 전환해, 가동 중단 시간을 줄이고 비즈니스 연속성을 유지합니다.

PowerShell 명령으로 AD 속성을 복원하는 방법은?

Recycle Bin이 활성화되어 있으면 PowerShell이 AD 속성 복구를 위한 가장 효율적인 경로를 제공합니다. 먼저 삭제된 개체를 식별하세요:

      Get-ADObject -Filter * -IncludeDeletedObjects | Where-Object {$_.Name -like "*username*"}
      

대상 개체를 찾았다면 이를 완전히 복원하세요:

      Restore-ADObject -Identity "ObjectGUID"
      

기존 개체에서 일부 속성을 복원하려면 Set-ADUser 또는 Set-ADObject 명령을 사용하여 문서나 최근 내보내기에서 특정 속성을 다시 구성하세요. 실무적으로는 Get-ADUser -Properties * 를 통해 정기적인 AD 내보내기를 수행하고, 속성 집합을 빠르게 다시 만들 수 있는 복원 스크립트를 함께 사용하는 방식이 효과적입니다. 이 방법은 다른 디렉터리 개체에 영향을 주지 않으면서 복원되는 항목을 세밀하게 제어할 수 있게 해줍니다.

PowerShell의 강점은 정밀성에 있습니다. 부수적인 변경 없이 필요한 항목만 정확히 복원할 수 있습니다. 복원 과정을 문서화한 복원 스크립트를 만들고, 먼저 운영 환경이 아닌 환경에서 테스트해 보세요. 효과적인 Identity management에는 무엇이 변경되었는지에 대한 가시성뿐 아니라, 변경에 어떻게 대응할지에 대한 제어도 필요합니다.

AD 개체에서 권한 있는 복원(authoritative)과 권한 없는 복원(non-authoritative) 중 언제 어떤 것을 사용해야 하나요?

더 최신의 수정 사항을 무시하고 모든 도메인 컨트롤러에 걸쳐 특정 AD 변경을 강제로 적용해야 할 때는 권한 있는 복원(authoritative restore)을 선택하세요. 이 방법은 실수로 삭제된 개체를 복구하거나, 승인되지 않은 대량 변경을 되돌릴 때 가장 효과적입니다. 권한 있는 프로세스는 복원된 개체에 더 높은 버전 번호를 표시하여, 복제가 도메인 전반에 걸쳐 복구된 데이터를 전파하도록 보장합니다.

비권한(Non-authoritative) 복원은 기존 디렉터리 데이터를 변경하지 않은 채 실패한 도메인 컨트롤러를 다시 구축하는 재해 복구 시나리오에 적합합니다. 이 방식은 백업 데이터를 전체 도메인에 강제로 적용하는 대신, 정상 도메인 컨트롤러에서 현재 AD 정보를 가져옵니다.

결정은 범위와 의도에 달려 있습니다. 권한(Authoritative) 복원은 전체 포리스트에 영향을 주며, 신중하게 제한적으로 사용해야 합니다. 강력하지만 시스템을 크게 방해할 수 있기 때문입니다. 비권한(Non-authoritative) 복원은 로컬 도메인 컨트롤러에만 영향을 주며, 기존 인프라와 원활하게 통합됩니다. 두 경우 모두 복제 토폴로지(replication topology)를 이해하고 최신 백업을 확보하는 것이 성공을 좌우합니다. Data security that starts with identity means having multiple recovery options and knowing exactly when to use each one.

Active Directory에서 컴퓨터 개체를 복원하는 방법은?

컴퓨터 개체 복원은 사용자 복원과 유사한 원칙을 따르지만, 머신 인증과 도메인 관계에 대한 추가 고려가 필요합니다. AD Recycle Bin이 활성화된 경우, 다음 명령을 사용해 모든 속성을 포함한 컴퓨터 계정을 복구합니다:

      Get-ADObject -Filter 'Name -eq "ComputerName"' -IncludeDeletedObjects | Restore-ADObject
      

Recycle Bin이 없으면 머신 신뢰 관계(machine trust relationships)를 다시 구축해야 하므로 컴퓨터 복원이 더 복잡해집니다. 권한(Authoritative) 복원 후에는, 해당 컴퓨터의 머신 계정 비밀번호가 제대로 동기화되지 않을 수 있으므로 보통 도메인에 다시 조인해야 합니다. 백업에서 컴퓨터 개체를 복원할 때 이 추가 단계를 미리 계획하십시오.

실무적인 접근에는 문제가 발생하기 전에 컴퓨터 개체 속성을 문서화하는 것이 포함됩니다. PowerShell을 사용해 컴퓨터 계정 정보를 정기적으로 내보내고, 그룹 멤버십, 조직 구성 단위(OU) 배치, 사용자 지정 속성을 함께 캡처하세요. 이러한 문서화는 자동 복원이 불가능한 경우 더 빠르게 수동으로 재구성할 수 있게 해줍니다. 컴퓨터 개체는 단순히 디렉터리 항목 이상의 의미를 가지며—여러분의 머신 ID 인프라를 구성하는 기반입니다. 이를 잘못 복원하면 전체 환경에서 인증이 손상될 수 있습니다.

공유하기

더 알아보기

저자 소개

Asset Not Found

Joe Dibley

보안 연구원

Netwrix의 보안 연구원이며 Netwrix Security Research Team의 일원입니다. Joe는 Active Directory, Windows 및 다양한 엔터프라이즈 소프트웨어 플랫폼과 기술 분야의 전문가로, 새로운 보안 위험, 복잡한 공격 기법, 그리고 이에 대한 대응(완화)과 탐지 방법을 연구합니다.