Windows LAPS – Abkündigung Legacy LAPS

Windows LAPS - Abkündigung Legacy LAPS

Windows Server 2025 bringt einige spannende Features für das neue Windows LAPS mit. Ebenfalls wird mit Windows 11 24H2 – was ebenfalls Basis für den Windows Server 2025 ist – das alte, legacy LAPS abgekündigt.

Die Deprecation kündigt Microsoft auf der Übersichtsseite zur Windows Local Administrator Password Solution an (Windows LAPS overview | Microsoft Learn):

Important

NOTE: The legacy Microsoft LAPS product is deprecated as of Windows 11 23 H2 and later. Installation of the legacy Microsoft LAPS MSI package is blocked on newer OS versions, and Microsoft will no longer consider code changes for the legacy Microsoft LAPS product.

Please use Windows LAPS, available on Windows Server 2019 and above, and on supported Windows 10 and Windows 11 clients, for managing local administrator account passwords.

Microsoft will continue to support the legacy Microsoft LAPS product on older versions of Windows (prior to Windows 11 23 H2) on which it was previously supported. That support will end upon the normal End of Support for those OSes.

Um das neue, native LAPS in Windows zu nutzen, müssen folgende Voraussetzungen erfüllt sein:

  • Windows Server 2016 Domain Controller mit DFL kleiner 2016
    • Nur Klartext Passwörter (!)
    • Keine Passwortverschlüsselung (!)
    • DSRM Kennwörter können nicht verwaltet werden
  • Es sind Server noch 2016 Domain Controller vorhanden und der DFL ist 2016
    • Wer möchte, kann auf Klartext Passwörter setzen
    • Verschlüsselte Passwörter werden unterstützt
    • DSRM Kennwörter können nur auf Domain Controller ab Windows Server 2019 oder höher verwaltet werden
  • Domain Controller 2019 und neuer mit DFL 2016 oder höher
    • Klartext Passwörter werden unterstützt
    • Passwörter können verschlüsselt gespeichert werden
    • DSRM Kennwörter aller Domain Controller können verwaltet werden
  • Member Server / Clients
    • Windows 11 22H2 – April 11 2023 Update
    • Windows 11 21H2 – April 11 2023 Update
    • Windows 10 – April 11 2023 Update
    • Windows Server 2025 Insider Builds
    • Windows Server 2022 – April 11 2023 Update
    • Windows Server 2019 – April 11 2023 Update

Sobald Windows Server 2025 oder ein Client Betriebssystem ab Windows 11 24H2 dabei ist, wird das neue LAPS um die Funktionen „Passwörter mit besserer Lesbarkeit“ sowie Passphrases mit langen oder kurzen Worten bzw. Worten mit einzigartigen Prefixes erweitert. Ebenfalls wird die Local Administrator Password Solution um die Funktion ergänzt, einen verwaltet Account (mit zufälligem Accountnamen) zu erstellen. Windows Server 2025 Domain Controller sind dafür nicht notwendig.

So viel zur „grauen Theorie“. In der Praxis und für die Praxis hier ein PowerShell Script, welches Windows LAPS „passend“ konfiguriert:

# Hier bitte an die eigenen Umgebungen anpassen oder
# die Daten dynamisch und passend auslesen (lassen)
$BaseOUDN = "OU=Binford OU,DC=ad,DC=binfordtools,DC=org"
$ServerOUDN = "OU=Server,OU=Binford OU,DC=ad,DC=binfordtools,DC=org"
$ClientsOUDN = "OU=Clients,OU=Binford OU,DC=ad,DC=binfordtools,DC=org"
$GroupsOUDN = "OU=Groups,OU=Binford OU,DC=ad,DC=binfordtools,DC=org"

# Active Directory Schema Erweiterung für Windows LAPS
# Berechtigungen setzen, damit die Computerkonten selber
# das Kennwort ins Attribut schreiben dürfen
Update-LapsADSchema -Confirm:$false
Start-Sleep -Seconds 30
Set-LapsADComputerSelfPermission -Identity $BaseOUDN

# Erstellen der Gruppen für Server / Client, die
# das Entschlüsseln für die Mitglieder erlauben
$GrpServer = New-ADGroup -Name "LG_LAPS-Server" `
    -DisplayName "LG_LAPS-Server" `
    -Description "Mitglieder können Server-Kennwörter entschlüsseln" `
    -GroupCategory Security `
    -GroupScope DomainLocal `
    -Path $GroupsOUDN `
    -PassThru
$GrpClients = New-ADGroup -Name "LG_LAPS-Clients" `
    -DisplayName "LG_LAPS-Clients" `
    -Description "Mitglieder können Client-Kennwörter entschlüsseln" `
    -GroupCategory Security `
    -GroupScope DomainLocal `
    -Path $GroupsOUDN `
    -PassThru

# Erstellen der Gruppenrichtlinien Objekte
# - Basis bzw. Grundkonfig
# - Server GPO
# - Client GPO
$GPOBase = New-GPO -Name "C_LAPS-Base"
$GPOBase.GpoStatus = "UserSettingsDisabled"
New-GPLink -Guid $GPOBase.Id `
    -Target $BaseOUDN

$GPOServer = New-GPO -Name "C_LAPS-Server"
$GPOServer.GpoStatus = "UserSettingsDisabled"
New-GPLink -Guid $GPOServer.Id `
    -Target $ServerOUDN

$GPOClients = New-GPO -Name "C_LAPS-Clients"
$GPOClients.GpoStatus = "UserSettingsDisabled"
New-GPLink -Guid $GPOClients.Id `
    -Target $ClientsOUDN

# Konfigurieren der Gruppenrichtlinien Objekte
Set-GPRegistryValue -Guid $GPOBase.Id `
    -Key "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\LAPS" `
    -ValueName "AutomaticAccountManagementEnabled" `
    -Value 1 `
    -Type DWord

Set-GPRegistryValue -Guid $GPOBase.Id `
    -Key "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\LAPS" `
    -ValueName "AutomaticAccountManagementTarget" `
    -Value 1 `
    -Type DWord

Set-GPRegistryValue -Guid $GPOBase.Id `
    -Key "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\LAPS" `
    -ValueName "AutomaticAccountManagementNameOrPrefix" `
    -Value "LAdmin" `
    -Type String

Set-GPRegistryValue -Guid $GPOBase.Id `
    -Key "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\LAPS" `
    -ValueName "AutomaticAccountManagementEnableAccount" `
    -Value 1 `
    -Type DWord

Set-GPRegistryValue -Guid $GPOBase.Id `
    -Key "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\LAPS" `
    -ValueName "AutomaticAccountManagementRandomizeName" `
    -Value 1 `
    -Type DWord

Set-GPRegistryValue -Guid $GPOBase.Id `
    -Key "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\LAPS" `
    -ValueName "BackupDirectory" `
    -Value 2 `
    -Type DWord

Set-GPRegistryValue -Guid $GPOBase.Id `
    -Key "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\LAPS" `
    -ValueName "ADPasswordEncryptionEnabled" `
    -Value 1 `
    -Type DWord

Set-GPRegistryValue -Guid $GPOBase.Id `
    -Key "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\LAPS" `
    -ValueName "PasswordComplexity" `
    -Value 8 `
    -Type DWord

Set-GPRegistryValue -Guid $GPOBase.Id `
    -Key "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\LAPS" `
    -ValueName "PasswordLength" `
    -Value 24 `
    -Type DWord

Set-GPRegistryValue -Guid $GPOBase.Id `
    -Key "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\LAPS" `
    -ValueName "PasswordAgeDays" `
    -Value 30 `
    -Type DWord

Set-GPRegistryValue -Guid $GPOBase.Id `
    -Key "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\LAPS" `
    -ValueName "PassphraseLength" `
    -Value 8 `
    -Type DWord

Set-GPRegistryValue -Guid $GPOBase.Id `
    -Key "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\LAPS" `
    -ValueName "PostAuthenticationResetDelay" `
    -Value 4 `
    -Type DWord

Set-GPRegistryValue -Guid $GPOBase.Id `
    -Key "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\LAPS" `
    -ValueName "PostAuthenticationActions" `
    -Value 3 `
    -Type DWord

Set-GPRegistryValue -Guid $GPOServer.Id `
    -Key "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\LAPS" `
    -ValueName "ADPasswordEncryptionPrincipal" `
    -Value $GrpServer.SID `
    -Type String

Set-GPRegistryValue -Guid $GPOClients.Id `
    -Key "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\LAPS" `
    -ValueName "ADPasswordEncryptionPrincipal" `
    -Value $GrpClients.SID `
    -Type String

# ... fertig :)

Am Ende sieht das in meiner Spielwiese dann beispielsweise so aus:


Die gesuchte Lösung noch nicht gefunden oder benötigen Sie Hilfe bei anderen Themen aus meinem Blog? Nehmen Sie gerne Kontakt mit mir bzw. meinem Unternehmen Jan Mischo IT auf. Ich freue mich auf Ihre Anfrage: https://janmischo.it/kontakt/


+49 2801 7004300

info@janmischo.it

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.