Active Directory Etki Alanı Denetleyicisi Nasıl Yedeklenir?
Bu yazıda Active Directory etki alanı denetleyicisi yedeklemesinden bahsedeceğiz ve PowerShell ve yerleşik Windows Server araçlarını kullanarak otomatik AD yedeklemesinin nasıl yapılandırılacağını öğreneceğiz.
Active Directory'yi Yedeklemem Gerekir mi?
Yönetici arkadaşlarımdan, farklı coğrafi konumlara dağılmış birden çok (3, 8 vb.) etki alanı denetleyiciniz varsa, AD'nizi yedeklemenize gerek olmadığını birçok kez duydum. Birden fazla DC ile etki alanı hata toleransı sağladığınızdan beri. Tüm DC'lerin eşzamanlı arızasının 0'a eğilimli olduğu şemadır ve etki alanı denetleyicilerinden biri arızalanırsa, yenisini aynı siteye hızla dağıtabilir ve eskisini ntdsutil kullanarak kaldırabilirsiniz.
Bununla birlikte, uygulamamda, tüm etki alanı denetleyicilerinin hasar gördüğü ortaya çıktığında çeşitli senaryolarla karşılaştım: bir durumda, tüm etki alanı denetleyicileri (farklı şehirlerde 20'den fazla olmasına rağmen), bir etki alanı yöneticisi şifresi nedeniyle şifrelendi. mimikatz aracını kullanan bir fidye yazılımı, başka bir durumda, zarar görmüş bir NTDS.DIT dosyasının kopyalanması etki alanı hatasıyla sonuçlandı.
Böylece AD'nizi yedekleyebilirsiniz ve yedeklemelisiniz. En azından önemli etki alanı denetleyicilerini ve FSMO (Esnek tek yöneticili işlemler) rol sahiplerini düzenli olarak yedeklemeniz gerekir. FSMO rollerine sahip etki alanı denetleyicilerinin listesini şu komutu kullanarak alabilirsiniz:
netdom query fsmoSon Active Directory Etki Alanı Denetleyicisi Yedekleme Tarihini Alın
Geçerli Active Directory etki alanı denetleyicisinin en son ne zaman yedeklendiğini repadmin aracını kullanarak kontrol edebilirsiniz:
repadmin /showbackup
Bu örnekte, DC ve AD bölümlerinin en son yedeklendiği tarihin 2017-02-18 olduğunu görebilirsiniz (muhtemelen, etki alanı denetleyicisi dağıtıldığından beri yedekleme yapılmamıştır).
Bu komutu kullanarak etki alanındaki tüm DC'ler için yedekleme durumunu alabilirsiniz:
repadmin /showbackup *Etki alanı denetleyicileriniz sanal makinelerde çalışıyorsa ve bunları anlık görüntüler kullanarak yedeklerseniz (Hyper-V yedeklemeli örneğe bakın), yedekleme tarihleri bariz bir nedenle güncellenmeyecektir. Çoğu modern yedekleme aracının, bunun bir DC olduğunu ve LDAP dizinindeki verilerin yedekleme sırasında güncellenmesi gerektiğini belirtmek için kontrol edebileceğiniz bir seçeneği vardır.
Windows Sunucu Yedeklemesini Kullanarak AD Etki Alanı Denetleyicisini Yedekleme
Herhangi bir özel yedekleme yazılımınız yoksa yerleşik Windows Server Yedekleme'yi kullanabilirsiniz (bu bileşen, NTBackup aracının yerini almıştır). Windows Server Yedekleme GUI'sinde bir otomatik yedekleme görevi yapılandırabilirsiniz, ancak bunun bazı kısıtlamaları vardır. Ana dezavantaj, yeni bir sunucu yedeğinin her zaman bir öncekinin üzerine yazmasıdır.
WSB kullanarak bir etki alanı denetleyicisini yedeklediğinizde, bir Sistem Durumu yedeği oluşturursunuz. Sistem Durumu, Active Directory veritabanını (NTDS.DIT), Grup İlkesi Nesnelerini, SYSVOL dizin içeriklerini, kayıt defterini, IIS meta verilerini, AD CS veritabanını ve diğer sistem dosyalarını ve kaynaklarını içerir. Yedekleme, Birim Gölge Kopyası Hizmeti (VSS) aracılığıyla oluşturulur.
Get-WindowsFeature PowerShell cmdlet'ini kullanarak Windows Server Yedekleme'nin yüklenip yüklenmediğini kontrol edebilirsiniz:
Get-WindowsFeature Windows-Server-BackupWSB kurulu değilse PowerShell ile ekleyebilirsiniz:
Add-Windowsfeature Windows-Server-Backup -IncludeallsubfeatureVeya Sunucu Yöneticisi -> Özellikler yoluyla Windows Server Yedekleme'yi kurun.
Bu AD etki alanı denetleyicisinin yedeğini, özel bir yedekleme sunucusundaki paylaşılan bir ağ klasörüne kaydedeceğim. Örneğin, yedekleme dizinine giden bir yol şöyle görünebilir:
\\mun-back1\backup\dc01. Bu klasör için NTFS izinlerini yapılandırın: Yalnızca Domain Admins ve Domain Controllers gruplarına Okuma ve Yazma erişim izinleri verin.
PowerShell ile Aktif Dizin Yedekleme
PowerShell kullanarak bir etki alanı denetleyicisini yedeklemeyi deneyelim. AD yedek kopyalarını birden çok düzeyde tutmak için, her bir yedek kopyayı, klasör adı olarak yedekleme oluşturma tarihiyle birlikte ayrı bir dizinde saklayacağız.
Import-Module ServerManager
[string]$date = get-date -f 'yyyy-MM-dd'
$path=”\\mun-back1\backup\dc1\”
$TargetUNC=$path+$date
$TestTargetUNC= Test-Path -Path $TargetUNC
if (!($TestTargetUNC)){
New-Item -Path $TargetUNC -ItemType directory
}
$WBadmin_cmd = "wbadmin.exe START BACKUP -backupTarget:$TargetUNC -systemState -noverify -vssCopy -quiet"
Invoke-Expression $WBadmin_cmdPowerShell betiğini çalıştırın. Wbadmin konsolu görünecektir. Disk yedekleme (gölge kopya) oluşturma işlemi hakkında bilgi içerir:
The backup operation to \\mun-back1\backup\dc1\2020-06-01 is starting.
Creating a shadow copy of the volumes specified for backup...Bir DC'yi ilk yedekleme girişimim bir hatayla başarısız oldu (etki alanı denetleyicisi bir VMWare sanal makinesiydi):
Detailed error: The filename, directory name, or volume label syntax is incorrect.
The backup of the system state failed [01.06.2020 8:31].WSB hata günlüğünü açtım — C:\Windows\Logs\WindowsServerBackup\Backup_Error-01-06-2020_09-23-14.log.
Dosyada şu hata oluştu:
Error in backup of C:\windows\\systemroot\ during enumerate: Error [0x8007007b] The filename, directory name, or volume label syntax is incorrect.
İleriye baktığımda, sorunun bir VMWware Tools sürücüsünün yanlış yolunda olduğunu söyleyeceğim.
Hatayı düzeltmek için, yükseltme komut istemini başlatın ve şu komutu çalıştırın:
DiskShadow /L writers.txt
list writers detailedListeyi aldıktan sonra, çıkın yazın ve C:\Windows\System32\writers.txt dosyasını açın. İçinde "windows\" içeren dizeyi bulun.
Benim durumumda bulduğum dize şöyle görünüyordu:
File List: Path = c:\windows\\systemroot\system32\drivers, Filespec = vsock.sysGördüğünüz gibi, VSOCK.SYS sürücüsüne yanlış bir yol kullanılmış.
Yolu düzeltmek için Kayıt Defteri Düzenleyicisi'ni açın ve HKLM\SYSTEM\CurrentControlSet\Services çorabı kayıt anahtarına gidin.
ImagePath değerini şu şekilde değiştirin:
\systemroot\system32\DRIVERS\vsock.sysile
System32\DRIVERS\vsock.sysYedek komut dosyasını yeniden çalıştırın.
Yedekleme başarılı olursa, günlükte aşağıdaki mesajları göreceksiniz:
The backup operation successfully completed.
The backup of volume (C:) completed successfully.
The backup of the system state successfully completed [01.06.2020 09:52].Son DC yedeklemesinin zamanını kontrol edin:
repadmin /showbackupŞimdi, son etki alanı denetleyicisi yedeklemesinin bugün gerçekleştirildiğini söylüyor.
Sunucudaki etki alanı denetleyicisi yedeğinin bulunduğu dizinin boyutu yaklaşık 9 GB'dir. Aslında, işletim sistemini WSB'den geri yüklemek için kullanabileceğiniz bir VHDX dosyamız var veya VHDX dosyasını manuel olarak bağlayabilir ve ihtiyacınız olan dosya veya klasörleri ondan kopyalayabilirsiniz.
Active Directory'de birden çok DC varsa hepsini yedeklemeniz gerekmez. Alandan tasarruf etmek için, Active Directory veritabanı — ntds.dit dosyasını periyodik olarak yedeklemek yeterlidir. Bunu yapmak için şu komutları kullanın:
$WBadmin_cmd = "wbadmin start backup -backuptarget:$path -include:C:\Windows\NTDS\ntds.dit -quiet"
Invoke-Expression $WBadmin_cmdBöyle bir yedeğin boyutu, AD veritabanı boyutuna bağlı olarak yalnızca 50-500MB olacaktır.
Otomatik AD yedeklemesi için DC'nizde C:\PS\Backup_AD_DC.ps1 komut dosyasını oluşturun. Görev Zamanlayıcı'yı kullanarak plana göre çalıştırın. GUI'den veya PowerShell ile bir Zamanlayıcı görevi oluşturabilirsiniz. Temel gereksinim, görevin altında çalıştırılması gerektiğidir.
NT AUTHORITY\SYSTEMEn yüksek ayrıcalıklarla çalıştır seçeneği işaretli hesap. Günlük AD etki alanı denetleyicisi yedeklemesi için aşağıdaki zamanlanmış görevi oluşturun:
$Trigger= New-ScheduledTaskTrigger -At 02:00am -Daily
$User= "NT AUTHORITY\SYSTEM"
$Action= New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument "C:\PS\Backup_AD_DC.ps1"
Register-ScheduledTask -TaskName "BackupAD-DC-daily" -Trigger $Trigger -User $User -Action $Action -RunLevel Highest -ForceBu nedenle, bir AD yedeği yapılandırdık ve bir sonraki makalemizde bir etki alanı denetleyicisi sistem durumu yedeğinden AD'yi geri yüklemenin yollarından bahsedeceğiz.









