Exchange 서버 관리 중 가장 아찔한 순간 중 하나가 바로 메일박스가 삭제되었을 때입니다. 하지만 다행히도 Microsoft는 이런 상황을 대비해 여러 복구 옵션을 제공하고 있어요. 오늘은 Exchange 온프레미스와 Exchange Online에서 삭제된 메일박스를 복구하는 방법들을 알아보겠습니다.
1. 삭제된 메일박스 복구의 기본 원리
Exchange에서 메일박스가 삭제되면 즉시 완전히 사라지는 것이 아닙니다. 마치 Windows의 휴지통처럼 일정 기간 보존되어 복구할 수 있는 상태로 남아있어요.
메일박스 보존 기간
Exchange 환경 | 기본 보존 기간 | 설정 변경 가능 여부 |
---|---|---|
Exchange Online | 30일 | 불가능 (고정값) |
Exchange 온프레미스 | 30일 | 가능 (EAC에서 조정) |
보존 기간이 지나면 메일박스는 완전히 삭제되어 복구가 불가능하므로, 빠른 대응이 중요합니다.
2. Exchange Online에서 삭제된 메일박스 복구
Exchange Online 환경에서는 Microsoft 365 관리 센터와 PowerShell 두 가지 방법으로 복구할 수 있습니다.
Microsoft 365 관리 센터 이용
- Microsoft 365 관리 센터에 관리자 계정으로 로그인
- 사용자 → 삭제된 사용자로 이동
- 복구할 사용자 선택 후 복원 클릭
- 라이선스 재할당 및 암호 설정
PowerShell 명령어 이용
# Exchange Online PowerShell 연결
Connect-ExchangeOnline
# 소프트 삭제된 메일박스 확인
Get-Mailbox -SoftDeletedMailbox | Select-Object Name,ExchangeGuid,DisplayName
# 특정 메일박스 복구
Undo-SoftDeletedMailbox "user@company.com" -WindowsLiveID "user@company.com" -Password (ConvertTo-SecureString -String 'NewPassword123!' -AsPlainText -Force)
3. Exchange 온프레미스에서 삭제된 메일박스 복구
온프레미스 환경에서는 Exchange 관리 센터(EAC)와 Exchange Management Shell을 활용할 수 있습니다.
Exchange 관리 센터(EAC) 사용
- EAC에 접속하여 받는 사람 → 메일박스 선택
- 점 3개 메뉴(…) 클릭 → 메일박스에 연결 선택
- 연결 해제된 메일박스 목록에서 복구할 메일박스 선택
- 기존 사용자 계정에 연결 또는 새 계정 생성
PowerShell을 통한 고급 복구
# Exchange Management Shell에서 실행
# 연결 해제된 메일박스 확인
Get-MailboxDatabase | Get-MailboxStatistics | Where {$_.DisconnectReason -eq "Disabled"} | Format-Table DisplayName,MailboxGuid,Database
# 메일박스를 기존 사용자에게 연결
Connect-Mailbox -Identity "메일박스GUID" -Database "데이터베이스명" -User "도메인\사용자명"
# 새로운 메일박스로 복원
New-MailboxRestoreRequest -SourceDatabase "MBD01" -SourceStoreMailbox "메일박스GUID" -TargetMailbox "대상메일박스"
4. 메일박스 복구 전 필수 확인사항
복구 작업을 시작하기 전에 반드시 확인해야 할 요소들이 있습니다.
권한 확인
- Exchange Online: Microsoft 365 전역 관리자 또는 Exchange 관리자 권한
- 온프레미스: 받는 사람 프로비저닝 권한 및 메일박스 가져오기/내보내기 역할
메일박스 상태 진단
# 메일박스 현재 상태 확인
Get-Mailbox -Identity "user@company.com"
# 소프트 삭제 상태 확인
Get-Mailbox -SoftDeletedMailbox -Identity "user@company.com"
# 비활성 메일박스 확인 (Online만)
Get-Mailbox -InactiveMailboxOnly | Where-Object {$_.PrimarySmtpAddress -eq "user@company.com"}
5. 복구 작업 중 발생할 수 있는 문제와 해결방법
‘Multiple Entries’ 오류 해결
동일한 이름의 메일박스가 여러 개 존재할 때 발생하는 오류입니다.
# GUID를 사용한 정확한 식별
$SourceGuid = (Get-Mailbox -SoftDeletedMailbox "user@company.com").ExchangeGuid
$TargetGuid = (Get-Mailbox "user@company.com").ExchangeGuid
New-MailboxRestoreRequest -SourceMailbox $SourceGuid -TargetMailbox $TargetGuid
복구 진행상황 모니터링
# 복구 요청 상태 확인
Get-MailboxRestoreRequest | Format-Table Name,Status,PercentComplete
# 세부 진행상황 확인
Get-MailboxRestoreRequestStatistics "복구요청명" -IncludeReport
6. 보존 기간 이후의 복구 방법: 서드파티 툴 활용
보존 기간이 지났거나 데이터베이스가 손상된 경우, 전문 복구 도구를 고려해볼 수 있습니다.
서드파티 복구 툴
도구명 | 주요 기능 | 지원 형식 |
---|---|---|
Stellar Repair for Exchange | EDB 파일 복구 | PST, EML, MSG |
Kernel Exchange Server Recovery | 손상된 데이터베이스 복구 | PST, Office 365 |
EdbMails EDB to PST Converter | 오프라인 EDB 복구 | PST, Live Exchange |
이러한 도구들은 Exchange 서버가 오프라인이거나 데이터베이스가 마운트되지 않는 상황에서도 메일박스 데이터를 추출할 수 있습니다.
7. Default 메일 보존기간을 연장하는 방법
정기 백업 수행
# 메일박스 내보내기 요청 생성
New-MailboxExportRequest -Mailbox "user@company.com" -FilePath "\\백업서버\경로\user.pst"
보존 기간 연장 설정 (온프레미스)
EAC에서 서버 → 데이터베이스 → 해당 데이터베이스 → 편집 → 제한에서 “삭제된 메일박스 보관 기간(일)” 값을 60일 이상으로 설정하는 것을 권장합니다.
메일박스 삭제 전 확인 절차
조직 내에서 메일박스 삭제 시 승인 절차를 수립하고, 중요한 메일박스는 사전에 백업을 받아두는 정책을 마련해두세요.
Exchange 서버에서 메일박스 복구는 생각보다 복잡하지 않습니다. 중요한 것은 신속한 대응과 올바른 절차를 따르는 것이에요. 무엇보다 정기적인 백업을 통해 이런 상황을 미연에 방지하는 것이 가장 좋은 방법입니다.