Dela via


Virtualisera Active Directory Domain Services (AD DS) på ett säkert sätt

Från och med Windows Server 2012 ger AD DS större stöd för virtualisering av domänkontrollanter genom att införa virtualiseringssäkra funktioner. I den här artikeln förklaras rollen hos USN:erna och InvocationID:erna i replikering av domänkontrollanter och diskuterar några potentiella problem som kan uppkomma.

Uppdatera sekvensnummer och anrops-ID

Virtuella miljöer utgör unika utmaningar för distribuerade arbetsbelastningar som är beroende av ett logiskt klockbaserat replikeringsschema. AD DS-replikering använder till exempel ett monotont ökande värde (kallas USN eller uppdateringssekvensnummer) som tilldelats transaktioner på varje domänkontrollant. Varje domänkontrollants databasinstans får också en identitet, som kallas invocationID. Anrops-ID för en domänkontrollant och dess USN fungerar tillsammans som en unik identifierare som är associerad med varje skrivtransaktion som utförs på varje domänkontrollant och måste vara unik i skogen.

AD DS-replikering använder InvocationID och USN på varje domänkontrollant för att avgöra vilka ändringar som behöver replikeras till andra domänkontrollanter. Om en domänkontrollant återställs bakåt i tiden utan domänkontrollantens medvetenhet och ett USN återanvänds för en helt annan transaktion, kommer replikeringen inte att konvergera eftersom andra domänkontrollanter kan tro att de redan har mottagit uppdateringarna som är associerade med det återanvända USN:et i samband med det angivna InvocationID:t.

Följande bild visar till exempel sekvensen av händelser som inträffar i Windows Server 2008 R2 och tidigare operativsystem när USN-återställning identifieras på VDC2, måldomänkontrollanten som körs på en virtuell dator. I den här bilden sker identifieringen av USN-återställning på VDC2 när en replikeringspartner upptäcker att VDC2 har skickat ett USN-värde för up-todateness som visades tidigare av replikeringspartnern, vilket indikerar att VDC2:s databas har återställts i tid felaktigt.

Händelsesekvensen när USN-tillbakagång upptäcks

En virtuell dator (VM) gör det enkelt för hypervisor-administratörer att återställa en domänkontrollants USN (dess logiska klocka) genom att till exempel tillämpa en ögonblicksbild utanför domänkontrollantens medvetenhet. För mer information om USN och USN-återställning, inklusive en ytterligare illustration som visar oupptäckta instanser av USN-återställning, se USN och USN-återställning.

Från och med Windows Server 2012 kan virtuella AD DS-domänkontrollanter som finns på hypervisor-plattformar som exponerar en identifierare med namnet VM-Generation ID identifiera och använda nödvändiga säkerhetsåtgärder för att skydda AD DS-miljön om den virtuella datorn återställs i tid genom att en ögonblicksbild av en virtuell dator tillämpas. Den VM-GenerationID-designen använder en hypervisor-leverantörsoberoende mekanism för att exponera denna identifierare i adressutrymmet för gäst-virtuella maskinen, så att den säkra virtualiseringsupplevelsen är konsekvent tillgänglig på alla hypervisorer som stöder VM-GenerationID. Den här identifieraren kan samplas av tjänster och program som körs på den virtuella datorn för att identifiera om en virtuell dator har rullats tillbaka i tiden.

Effekter av USN-tillbakagång

När USN-återställningar inträffar replikeras inte ändringar av objekt och attribut inåt till måldomänkontrollanter som tidigare har sett USN.

Eftersom dessa måldomänkontrollanter tror att de är uppdaterade rapporteras inga replikeringsfel i Directory Service-händelseloggar eller med övervaknings- och diagnostikverktyg.

USN-återställning kan påverka replikeringen av alla objekt eller attribut i valfri partition. Den vanligaste sidoeffekten är att användarkonton och datorkonton som skapas på återställningsdomänkontrollanten inte finns på en eller flera replikeringspartner. Eller så finns inte de lösenordsuppdateringar som har sitt ursprung i rollback-domänkontrollanten hos replikeringspartners.

En USN-återställningsprocess kan förhindra att vilken objekttyp som helst i någon Active Directory-partition replikeras. Dessa objekttyper innehåller följande:

  • Topologin och schemat för Active Directory-replikering
  • Förekomsten av domänkontrollanter i skogen och de roller som dessa domänkontrollanter har
  • Förekomsten av domän- och programpartitioner i skogen
  • Förekomsten av säkerhetsgrupper och deras nuvarande gruppmedlemskap
  • DNS-postregistrering i Active Directory-integrerade DNS-zoner

Storleken på USN-hålet kan representera hundratals, tusentals eller till och med tiotusentals ändringar av användare, datorer, förtroenden, lösenord och säkerhetsgrupper. USN-hålet definieras av skillnaden mellan det högsta USN-nummer som fanns när säkerhetskopieringen av det återställda systemtillståndet gjordes och antalet ursprungliga ändringar som skapades på den återställda domänkontrollanten innan det togs offline.

Identifiera en USN-återställning

Eftersom en USN-återställning är svår att identifiera loggar en domänkontrollant händelse 2095 när en källdomänkontrollant skickar ett tidigare bekräftat USN-nummer till en måldomänkontrollant utan motsvarande ändring i anrops-ID:t.

För att förhindra att unika uppdateringar av Active Directory skapas på den felaktigt återställda domänkontrollanten pausas tjänsten Net Logon. När tjänsten Net Logon pausas kan användarkonton och datorkonton inte ändra lösenordet på en domänkontrollant som inte utgående replikerar sådana ändringar. På samma sätt kommer Active Directory-administrationsverktyg att gynna en felfri domänkontrollant när de uppdaterar objekt i Active Directory.

På en domänkontrollant registreras händelsemeddelanden som liknar följande om följande villkor är sanna:

  • En källdomänkontrollant skickar ett tidigare bekräftat USN-nummer till en måldomänkontrollant.
  • Det finns ingen motsvarande ändring i anrops-ID:t.

Dessa händelser kan samlas in i händelseloggen för Katalogtjänsten. De kan dock skrivas över innan de observeras av en administratör.

Om du misstänker att en USN-återställning har inträffat men inte ser någon motsvarande händelse i händelseloggarna kontrollerar du posten DSA Not Writable i registret. Den här posten ger kriminaltekniska bevis för att en USN-återgång har inträffat.

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NTDS\Parameters
Registry entry: Dsa Not Writable
Value: 0x4

Warning

Om du tar bort eller manuellt ändrar värdet för registerposten Dsa Not Writable hamnar återställningsdomänkontrollanten i ett permanent tillstånd som inte stöds. Därför stöds inte sådana ändringar. Mer specifikt tar ändring av värdet bort karantänbeteendet som lagts till av USN-återställningsidentifieringskoden. Active Directory-partitionerna på återställningsdomänkontrollanten kommer att vara permanent inkonsekventa med direkta och transitiva replikeringspartner i samma Active Directory-skog.

Mer information om den här registernyckeln och lösningsstegen finns i supportartikeln Active Directory Replication Error 8456 or 8457: "The source | målservern avvisar för närvarande replikeringsbegäranden".

Virtualiseringsbaserade skyddsåtgärder

Under installationen av domänkontrollanten lagrar AD DS ursprungligen VM GenerationID-identifieraren som en del av attributet msDS-GenerationID på domänkontrollantens datorobjekt i databasen (kallas ofta kataloginformationsträdet eller DIT). Vm GenerationID spåras oberoende av en Windows-drivrutin i den virtuella datorn.

När en administratör återställer den virtuella datorn från en tidigare ögonblicksbild jämförs det aktuella värdet för VM GenerationID från drivrutinen för den virtuella datorn mot ett värde i DIT.

Om de två värdena är olika återställs anrops-ID:et och RID-poolen ignoreras, vilket förhindrar återanvändning av USN. Om värdena är desamma bekräftas transaktionen som vanligt.

AD DS jämför också det aktuella värdet för VM GenerationID från den virtuella datorn med värdet i DIT varje gång domänkontrollanten startas om och, om det skiljer sig, återställer anrops-ID:et, tar bort RID-poolen och uppdaterar DIT med det nya värdet. Den synkroniserar också sysvol-mappen utan auktoritativt syfte för att slutföra säker återställning. På så sätt kan skyddsåtgärderna utökas till att omfatta tillämpningen av ögonblicksbilder på virtuella datorer som har stängts av. Dessa skydd som introducerades i Windows Server 2012 gör det möjligt för AD DS-administratörer att dra nytta av de unika fördelarna med att distribuera och hantera domänkontrollanter i en virtualiserad miljö.

Följande bild visar hur virtualiseringsskydd tillämpas när samma USN-återställning identifieras på en virtualiserad domänkontrollant som kör Windows Server 2012 på en hypervisor som stöder VM-GenerationID.

Skyddsåtgärder som tillämpas när samma USN-återgång upptäcks

I det här fallet när hypervisor-programmet identifierar en ändring av VM-GenerationID värde utlöses virtualiseringsskydd, inklusive återställning av anrops-ID för den virtualiserade domänkontrollanten (från A till B i föregående exempel) och uppdatering av det VM-GenerationID värde som sparats på den virtuella datorn för att matcha det nya värdet (G2) som lagras av hypervisorn. Skydden säkerställer att replikeringen konvergerar för båda domänkontrollanterna.

Med Windows Server 2012 använder AD DS skydd på virtuella domänkontrollanter som finns på VM-GenerationID medvetna hypervisorer och säkerställer att oavsiktlig tillämpning av ögonblicksbilder eller andra sådana hypervisoraktiverade mekanismer som kan återställa en virtuell dators tillstånd inte stör AD DS-miljön (genom att förhindra replikeringsproblem som en USN-bubbla eller kvardröjande objekt).

Att återställa en domänkontrollant genom att använda en ögonblicksbild av en virtuell dator rekommenderas inte som en alternativ mekanism för att säkerhetskopiera en domänkontrollant. Vi rekommenderar att du fortsätter att använda Windows Server Backup eller andra VSS-skrivarbaserade säkerhetskopieringslösningar.

Caution

Om en domänkontrollant i en produktionsmiljö av misstag återställs till en ögonblicksbild rekommenderar vi att du kontaktar leverantörerna för program och tjänster som finns på den virtuella datorn för att få vägledning om hur du verifierar tillståndet för dessa program efter återställning av ögonblicksbilder.

Mer information finns i Virtualiserad domänkontrollants arkitektur för säker återställning.

Återställa från en USN-återställning

Det finns två metoder för att återhämta sig från en USN-återställning:

  • Ta bort domänkontrollanten från domänen
  • Återställ systemtillståndet från en pålitlig säkerhetskopia

Ta bort domänkontrollanten från domänen

  1. Ta bort Active Directory från domänkontrollanten för att tvinga den att vara en fristående server.
  2. Stäng av den degraderade servern.
  3. Rensa metadata för den nedgraderade domänkontrollanten på en frisk domänkontrollant.
  4. Om den felaktigt återställda domänkontrollanten har operativa huvudroller, överför dessa roller till en felfri domänkontrollant.
  5. Starta om den degraderade servern.
  6. Om du behöver installera Active Directory på den fristående servern igen.
  7. Om domänkontrollanten tidigare var en global katalog konfigurerar du domänkontrollanten till en global katalog.
  8. Om domänkontrollanten tidigare var värd för huvudroller för åtgärder överför du tillbaka driftens huvudroller till domänkontrollanten.

Återställ systemtillståndet från en pålitlig säkerhetskopia

Utvärdera om det finns giltiga säkerhetskopieringar av systemtillstånd för den här domänkontrollanten. Om en giltig säkerhetskopiering av systemtillståndet gjordes innan den återställda domänkontrollanten felaktigt återställdes, och om säkerhetskopian innehåller senaste ändringar som gjorts på domänkontrollanten, återställ då systemtillståndet från den senaste säkerhetskopian.

Du kan också använda ögonblicksbilden som källa för en säkerhetskopia. Eller så kan du ange att databasen ska ge sig själv ett nytt anrops-ID med hjälp av proceduren i avsnittet Återställa en virtuell domänkontrollant när en lämplig säkerhetskopiering av systemtillståndsdata inte är tillgänglig

Nästa steg