Tombstone to obiekt kontenerowy zawierający usunięte obiekty z Active Directory. W rzeczywistości usługa Active Directory nie usuwa fizycznie obiektu przez kilka dni po jego usunięciu.. Zamiast tego Active Directory ustawia atrybut „isDeleted” usuniętego obiektu na TRUE. Tak oznaczony obiekt trafia do kontenera Tombstone, znanego wcześniej jako CN=Deleted Objects.
Dostęp do tombstone nie jest możliwy za pośrednictwem katalogów systemu Windows ani przystawek konsoli Microsoft Management Console (MMC). Jednakże proces replikacji katalogów uzyskuje dostęp do tombstone, dzięki czemu replikuje je na wszystkich kontrolerach domeny w domenie. Ten proces gwarantuje, że Active Directory usuwa usunięty obiekt ze wszystkich komputerów.
Atrybut życia tombstone to parametr określający czas, po którym obiekt zostanie fizycznie usunięty z Active Directory. Domyślna wartość atrybutu czasu życia tombstone to 60 lub 180 dni, w zależności od wersji Windows Server. W razie potrzeby można jednak zmienić tę wartość. Administratorzy przechowują obiekt w kontenerze reliktu dłużej niż opóźnienie replikacji między kontrolerami domeny. Dzięki temu tombstone (obiekt oznaczony jako usunięty) nie zostanie fizycznie usunięty przed replikacją obiektów w lesie.
Wszystkie kontrolery domeny zachowują ten sam atrybut tombstone i wszystkie serwery usuwają go jednocześnie. Synchronizacja ta ma miejsce, ponieważ okres istnienia reliktu wygasa na podstawie czasu, w którym obiekt został logicznie usunięty z Active Directory, a nie momentu otrzymania go jako reliktu na serwerze w drodze replikacji.
Obecny Lifetime Tombstone
Lifetime tobmstone można sprawdzić używając ADSI Edit, jednak trwa to zbyt długo. Lepszym podejściem jest użycie cmdlet PowerShell’a. Polecenie natychmiast pokazuje aktualny poziom ustawienia czasu faktycznego usunięcia reliktu z Active Directory.
1 |
(Get-ADobject "cn=Directory Service,cn=Windows NT,cn=Services,cn=Configuration,DC=beitadminpl,DC=local" -properties "tombstonelifetime").tombstonelifetime |
Skrypt PowerShell do zmiany Lifetime Tombstone
Skoro PowerShell działa całkiem dobrze, warto użyć skryptu (o ile robisz to często), aby sprawnie zmienić ten parametr w Active Directory.
Skrypt poprosi o nazwę Twojej domeny oraz Lifetime (tylko cyfra/liczba) dni do zmiany.
1 |
# Load the Active Directory module<br>Import-Module ActiveDirectory<br><br># Prompt the user to enter their domain<br>$domain = Read-Host "Please enter your domain (e.g., YourDomain.com)"<br><br># Convert the domain to the correct format for the distinguished name<br>$domainDN = $domain -replace "\.",",DC=" -replace "^", "DC="<br><br># Define the new tombstone lifetime in days<br>$newTombstoneLifetime = Read-Host "Please enter lifetime (e.g., 30, 60, 180)"<br><br># Retrieve the current tombstone lifetime<br>$currentTombstoneLifetime = Get-ADObject -Identity "CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,$domainDN" -Properties tombstoneLifetime<br><br># Display the current tombstone lifetime<br>Write-Host "Current Tombstone Lifetime: $($currentTombstoneLifetime.tombstoneLifetime) days"<br><br># Set the new tombstone lifetime<br>Set-ADObject -Identity "CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,$domainDN" -Replace @{tombstoneLifetime=$newTombstoneLifetime}<br><br># Verify the change<br>$updatedTombstoneLifetime = Get-ADObject -Identity "CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,$domainDN" -Properties tombstoneLifetime<br>Write-Host "Updated Tombstone Lifetime: $($updatedTombstoneLifetime.tombstoneLifetime) days" |
Podsumowanie
Wydłużenie lifetime dla tombstone pozwoli w sytuacji odłączonego kontrolera domenowego na pozostawienie obiektu w lokalnym katalogu.
Dziękuję Ci, za poświęcony czas na przeczytanie tego artykułu. Jeśli był on dla Ciebie przydatny, to gorąco zachęcam Cię do zapisania się na mój newsletter, jeżeli jeszcze Cię tam nie ma. Proszę Cię także o “polubienie” mojego bloga na Facebooku oraz kanału na YouTube – pomoże mi to dotrzeć do nowych odbiorców. Raz w tygodniu (niedziela punkt 17.00) otrzymasz powiadomienia o nowych artykułach / projektach zanim staną się publiczne. Możesz również pozostawić całkowicie anonimowy pomysł na wpis/nagranie.
Link do formularza tutaj: https://beitadmin.pl/pomysly
Pozostaw również komentarz lub napisz do mnie wiadomość odpisuję na każdą, jeżeli Masz jakieś pytania:).