Computer >> 컴퓨터 >  >> 시스템 >> Windows Server

백업으로 Active Directory 도메인 컨트롤러 복원하는 방법 완벽 가이드

이 글에서는 사전에 생성해 둔 시스템 상태(System State) 백업으로부터 Active Directory(AD) 도메인 컨트롤러를 복원하는 방법을 소개하고, AD DC 복구의 유형과 원리에 대해서도 자세히 살펴봅니다.

도메인 컨트롤러 복구 방식 선택: 복제 vs 백업

AD 도메인 컨트롤러(DC)에 장애가 발생하여 백업본으로 복원하려는 상황이라면, 작업을 시작하기 전에 어떤 복구 시나리오를 사용할지 먼저 결정해야 합니다. 이는 네트워크 내에 다른 도메인 컨트롤러가 존재하는지, 그리고 해당 DC들의 Active Directory 데이터베이스가 정상인지에 따라 달라집니다.

AD 복제를 통한 도메인 컨트롤러 복구

표준 AD 복제를 통한 DC 복구는 엄밀히 말하면 백업으로부터의 복원은 아닙니다. 이 시나리오는 기업 네트워크에 여러 개의 도메인 컨트롤러가 있고 모두 정상적으로 동작 중일 때 사용할 수 있습니다.

방식은 간단합니다. 새 서버를 설치한 후 같은 사이트(site)에 새로운 ADDS 도메인 컨트롤러로 승격시키고, 장애가 발생한 기존 DC는 AD에서 제거하면 됩니다.

이 방법은 되돌릴 수 없는 AD 변경을 일으키지 않는 가장 쉬운 복구 방식입니다. ntds.dit 데이터베이스, GPO 파일, SYSVOL 폴더의 내용이 온라인 상태로 유지된 다른 DC들로부터 새 도메인 컨트롤러에 자동으로 복제됩니다.

참고로 ADDS 데이터베이스 크기가 작고 고속 네트워크 링크로 접근 가능한 다른 DC가 있다면, 백업 복원보다 이 방법이 더 빠를 수 있습니다.

Active Directory 복원 유형: 권위 있는 복원 vs 비권위 있는 복원

백업에서 AD DC를 복원하기 전에 반드시 이해해야 할 두 가지 복원 유형이 있습니다.

  • 권위 있는 복원(Authoritative Restore) — AD 객체를 복원한 후, 복원된 DC에서 다른 모든 도메인 컨트롤러로 복제가 수행됩니다. 단일 DC 또는 모든 DC가 동시에 장애를 겪은 경우(랜섬웨어나 바이러스 공격 등), 혹은 손상된 NTDS.DIT 데이터베이스가 도메인 전체에 복제되어 버린 경우에 사용합니다. 이 모드에서는 복원된 모든 AD 객체의 USN(Update Sequence Number) 값이 100,000만큼 증가하므로, 다른 DC들은 복원된 객체들을 더 최신 데이터로 인식하고 도메인 내에 복제하게 됩니다. 단, 권위 있는 복원은 매우 신중하게 사용해야 합니다! 백업 생성 이후에 이루어진 대부분의 AD 변경 사항(그룹 멤버십, Exchange 특성 등)이 유실될 수 있습니다.
  • 비권위 있는 복원(Non-authoritative Restore) — AD 데이터베이스를 복원한 후, 해당 컨트롤러가 다른 DC들에게 "백업에서 복원되었으므로 최신 AD 변경 사항이 필요하다"고 알립니다(새로운 DSA Invocation ID가 생성됨). 느린 WAN 채널로는 대용량 AD 데이터베이스를 빠르게 복제하기 어려운 원격 사이트나, 서버에 중요한 데이터·애플리케이션이 있었던 경우에 유용한 복구 방법입니다.

시스템 상태 백업으로 AD 도메인 컨트롤러 복원하기

도메인에 단 하나의 DC만 존재하고, 그 DC가 구동되던 물리 서버에 장애가 발생한 상황을 가정해 보겠습니다. 비교적 최근의 도메인 컨트롤러 시스템 상태 백업본이 있으며, 완전히 새로운 서버에 권위 있는 복원 방식으로 Active Directory를 복원하려 합니다.

복원을 시작하려면 먼저 장애가 발생한 DC와 동일한 버전의 Windows Server를 설치해야 합니다. 그다음 ADDS 역할(구성은 하지 않음)과 Windows Server Backup 기능을 설치합니다.

Active Directory를 복원하려면 서버를 DSRM(Directory Services Restore Mode, 디렉터리 서비스 복원 모드)으로 부팅해야 합니다. msconfig를 실행한 후 부팅 탭에서 안전 부팅 → Active Directory 복구 옵션을 선택하세요.

서버를 재시작하면 DSRM으로 부팅됩니다. Windows Server Backup(wbadmin)을 실행하고 오른쪽 메뉴에서 복구(Recover)를 선택합니다.

복구 마법사에서 '다른 위치에 저장된 백업(A backup stored on another location)'을 체크합니다. 이후 기존 AD 도메인 컨트롤러의 백업이 저장된 디스크를 선택하거나 UNC 경로를 지정합니다.

WSB(Windows Server Backup)가 디스크의 백업을 인식하려면 WindowsImageBackup 폴더를 드라이브 최상위(root) 경로에 배치해야 합니다. 아래 명령으로 드라이브에 백업이 존재하는지 확인할 수 있습니다:

wbadmin get versions -backupTarget:D:

복원에 사용할 백업 날짜를 선택하고, System State를 체크하여 복원 대상으로 지정합니다.

복원 위치는 원래 위치(Original location)를 선택하고, 반드시 'Active Directory 파일의 권위 있는 복원 수행(Perform an authoritative restore of Active Directory files)' 옵션에 체크합니다.

이때 "다른 서버의 백업이며, 다른 서버에서 복구하면 정상 동작하지 않을 수 있다"는 경고가 표시됩니다. 확인을 누르고 진행하세요. 이어서 아래와 같은 추가 경고에도 동의합니다:

Windows Server Backup
참고: 이 복구 옵션은 복구 후 로컬 서버의 복제 콘텐츠가 재동기화되도록 합니다. 잠재적인 지연 또는 중단 문제가 발생할 수 있습니다.

그러면 새 서버에서의 AD 도메인 컨트롤러 복구 프로세스가 시작됩니다. 완료되면 재부팅이 요구되며(새 서버의 이름이 백업에 담긴 DC 호스트명으로 변경됨), 일반 모드로 부팅합니다(msconfig에서 DSRM 설정 해제).

도메인 관리자 권한이 있는 계정으로 서버에 로그인합니다.

SYSVOL 및 NETLOGON 폴더 누락 오류 수정

복원 직후 ADUC(Active Directory 사용자 및 컴퓨터) 콘솔을 처음 실행하면 다음과 같은 오류가 나타날 수 있습니다:

Active Directory Domain Services
다음 이유로 명명 정보를 찾을 수 없습니다:
서버가 작동하지 않습니다.
(The server is not operational.)

복원된 도메인 컨트롤러에 SYSVOL과 NETLOGON 폴더가 없어서 발생하는 문제입니다. 아래 순서로 해결할 수 있습니다:

  1. regedit.exe를 실행합니다.
  2. 레지스트리 키 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters로 이동합니다.
  3. SysvolReady 값을 0에서 1로 변경합니다.
  4. NetLogon 서비스를 재시작합니다: net stop netlogon & net start netlogon

이후 ADUC를 다시 열면 도메인 구조가 정상적으로 표시됩니다. 이로써 AD 도메인 컨트롤러가 권위 있는 복원 모드로 성공적으로 복구되었으며, 이후 Active Directory의 모든 객체가 다른 도메인 컨트롤러들로 자동 복제됩니다.

남은 DC가 유일한 경우에는 5개의 FSMO 역할을 모두 소유하고 있는지 확인하고, 필요하다면 강제로 seize(탈취)해야 합니다.

특정 AD 객체만 백업에서 복원하는 방법

특정 AD 객체만 복원하려면 Active Directory 휴지통(Recycle Bin)을 우선 사용하는 것이 좋습니다. 삭제 표시 수명(tombstone lifetime)이 이미 지났거나 AD 휴지통이 활성화되어 있지 않다면, 권위 있는 복원 모드로 개별 객체를 복구할 수 있습니다.

절차를 요약하면 다음과 같습니다:

  1. DC를 DSRM 모드로 부팅합니다.
  2. 사용 가능한 백업 목록을 확인합니다: wbadmin get versions
  3. 선택한 백업의 복구를 시작합니다: wbadmin start systemstaterecovery –version:[버전]
  4. DC 복원을 확인합니다(비권위 있는 모드).
  5. 재시작 후 ntdsutil을 실행합니다.
  6. activate instance ntds
  7. authoritative restore

복원할 객체의 전체 LDAP 경로를 지정합니다. OU 전체를 복원할 수도 있습니다:

restore subtree "OU=Users,DC=woshub,DC=com"

단일 AD 객체만 복원하는 것도 가능합니다:

restore object "cn=Test,OU=Users,DC=woshub,DC=com"

이 명령은 지정된 객체(경로)가 다른 도메인 컨트롤러에서 복제되지 않도록 차단하고, 해당 객체의 USN을 100,000만큼 증가시킵니다.

quit으로 ntdsutil을 종료한 뒤, DC를 일반 모드로 부팅하고 객체가 정상적으로 복원되었는지 확인하면 됩니다.