AD-Security: Verwendung von LAPS
Jeder Windows Client und Server hat automatisch bei der Installation einen lokalen Administrator. Häufig werden für diese Accounts die Kennwörter nie geändert oder sogar vergessen. Das stellt natürlich ein Sicherheitsrisiko dar. Microsoft hat hierfür die sog. „LAPS – Local Administrator Password Solution“ entwickelt, welche in regelmäßigen Abständen das Kennwort des lokalen Administrators ändern und zentral im Active Directory speichert und nur von bestimmten berechtigten Personen (bspw. Userhelpdesk) ausgelesen werden dürfen.
- Bezug von LAPS
- Vorbereitung
- Installation LAPS auf Domain-Controller
- Fix: Wenn die GPO-Templates nicht im GPEditor sichtbar sind
- Installation LAPS auf Clients
- Konfiguration der benötigten GPOs
Bezug von LAPS
LAPS kann kostenlos auf der Microsoft Webseite heruntergeladen werden: Download Local Administrator Password Solution (LAPS) from Official Microsoft Download Center. Derzeit steht es in Version 6.2 vom 18.05.2021 zur Verfügung.
Im Download enthalten sind Dokumentationen für die Konfiguration und den Betrieb, sowie die Installationsdateien für die Plattformen:
- 32bit (x86)
- 64bit (x64)
- ARM64
Vorbereitung
Für die Nutzung von LAPS werden Berechtigungen auf die OUs vergeben, in denen Clients/Server liegen. Es empfiehlt sich vorher Gedanken zu machen, in welchen OUs Clients/Server liegen und wie granular man berechtigen möchte.
In meiner DEMO-Umgebung kommen die Clients in die OU „MY/COMPANY/DEVICES“. In dieser Anleitung werden alle notwendigen Schritte nur für die Clients durchgeführt, für alle weiteren OUs ist der Ablauf dann gleich.
Zudem wird die AD-Gruppe „LAPS-CLIENTS-ReadAndReset“ als „domain local“ angelegt.
Ablage der Installationsdatei (LAPSx64.msi) auf einem zentralen Share. Aufgrund der geringen Dateigröße lege ich es im Scripts-Verzeichnis des SYSVOLs ab:
- per Netzwerk: \\DEMOLABOR.intern\SysVol\DEMOLABOR.intern\scripts
- per Lokal: C:\Windows\SYSVOL\domain\scripts
Außerdem wird dort eine Batchdatei „LAPSinstallCSE.bat“ abgelegt, welche einen einfachen Befehl enthält, der die Installation ohne Interaktion durchführt.
msiexec /i \\DEMOLABOR.intern\SysVol\DEMOLABOR.intern\scripts\LAPS\LAPSx64.msi /quiet
Installation von LAPS auf Domain-Controllern
Auf dem Domain-Controller das Setup „LAPSx64.msi“ ausführen. Die Schritte sind einfach und selbstredend, lediglich im 3. Schritt ist darauf zu achten, dass anstelle „AdmPwd GPO Extension“ die kompletten „Management Tools“ installiert werden.
Fix: GPO-Templates
Werden im GP-Editor die „Administrative Templates“ vom lokalen Computer genommen, dann sollte dort ein Unterordner „LAPS“ zu sehen sein. Ist das nicht der Fall, dann werden die Templates vom zentralen Speicher genommen. Häufig müssen dann die Templates vom lokalen Speicher zum zentralen Speicher kopiert werden.
Folgende Dateien kopieren:
- Quelle:
- C:\Windows\PolicyDefinitions\AdmPwd.admx
- C:\Windows\PolicyDefinitions\en-US\AdmPwd.adml
- Ziel:
- C:\Windows\SYSVOL\sysvol\DEMOLABOR.intern\Policies\PolicyDefinitions\AdmPwd.admx
- C:\Windows\SYSVOL\sysvol\DEMOLABOR.intern\Policies\PolicyDefinitions\en-US\AdmPwd.adml
Installation LAPS auf Clients
Die Installation auf den Clients ist genauso einfach, wie auf dem Domain-Controller. Der einzige Unterschied ist, dass beim 3. Schritt die Standard-Einstellung („AdmPwd GPO Extension“) belassen wird.
Anstelle dieser händischen Installation kann man dies entweder über eine Software-Verteilung durchführen oder (wie in den Vorbereitungen genannt) per GPO und einem Batch-Script.
Konfiguration der benötigten GPOs
Ich erstelle zwei GPOs:
- C-C-PO-AT-LAPS_Step1_ClientSideExtenion-Installation_v1.0
- C-C-PO-AT-LAPS_Step2_Activation_v1.0
Tipp: Einfache Namen für GPOs
Beide GPOs werden nun in die OU „MY/COMPANY/DEVICES“ verlinkt. Es muss dann nur auf die Verarbeitungsreihenfolge geachtet werden, dass „Step1“ vor „Step2“ ausgeführt wird – siehe hierzu: Verarbeitungsreihenfolge der GPOs
C-C-PO-AT-LAPS_Step1_ClientSideExtenion-Installation_v1.0
Hier wird eingestellt:
C-C-PO-AT-LAPS_Step2_Activation_v1.0
Hier wird eingestellt:
Schema-Erweiterung und Berechtigung in der AD
In einer administrativen PowerShell folgenden Befehl ausführen:
Import-module AdmPwd.PS
Update-AdmPwdADSchema
Mit folgendem Befehl kann man auslesen, welche Gruppen derzeit berechtigt sind:
Find-AdmPwdExtendedrights -identity "OU=DEVICES,OU=COMPANY,OU=MY,DC=DEMOLABOR,DC=intern" | Format-Table
Damit die Computer-Konten das Kennwort setzen können, benötigen sie zwei Rechte:
- ms-Mcs-AdmPwdExpirationTime
- ms-Mcs-AdmPwd
Gesetzt wird dies via Powershell-Befehl:
Set-AdmPwdComputerSelfPermission -OrgUnit "OU=DEVICES,OU=COMPANY,OU=MY,DC=DEMOLABOR,DC=intern"
Anschließend muss die erstelle AD-Gruppe „LAPS-CLIENTS-ReadAndReset“ auf die OU berechtigt werden – das erfolgt erneut mittels Powershell-Befehl:
Set-AdmPwdReadPasswordPermission -OrgUnit "OU=DEVICES,OU=COMPANY,OU=MY,DC=DEMOLABOR,DC=intern" -AllowedPrincipals DEMOLABOR\LAPS-CLIENTS-ReadAndReset
Anschließend natürlich noch die Berechtigung des Zurücksetzens der LAPS-Kennwörter. Der PowerShell-Befehl ist ähnlich, nur anstelle „Set-AdmPwdReadPasswordPermission“ eben „Set-AdmPwdResetPasswordPermission“.
Set-AdmPwdResetPasswordPermission -OrgUnit "OU=DEVICES,OU=COMPANY,OU=MY,DC=DEMOLABOR,DC=intern" -AllowedPrincipals DEMOLABOR\LAPS-CLIENTS-ReadAndReset
Nachtrag: Umstellung auf „Windows-LAPS“
Seit April 2023 bietet Microsoft nun für moderne Betriebssysteme das LAPS nativ an. Im Artikel AD-Security: Windows-LAPS wird die Umstellung bzw. der Parallelbetrieb für ältere Betriebssysteme beschrieben.
1 Antwort
[…] Seit April 2023 verteilt Microsoft das LAPS (= „Local Administrator Password Solution„) auf aktuelle Systeme per Windows-Update. Es wurden unter der Haube ein paar Funktionen hinzugefügt, letztlich soll das Einrichten und Verwenden von LAPS vereinfacht werden. Ich habe in der Vergangenheit schon einen Artikel zu diesem Thema veröffentlicht: AD-Security: Verwendung von LAPS […]