Adam the Automator

Wie handhaben Sie derzeit lokale Windows-Administrator-Passwörter? Jedes Windows-System hat eines, und sie sind der Schlüssel zum Königreich eines jeden PCs. Da lokale Administratorkennwörter nicht Teil von Active Directory (AD) sind, müssen Sie jedes Konto auf jedem Computer einzeln verwalten. Das ist mühsam.

Organisationen denken oft nicht viel darüber nach und legen einfach ein Standard-Administratorkennwort für jeden Windows-Computer fest. Diese Praxis ist zwar bequem, stellt aber ein viel größeres Problem dar, wenn dieses eine Hauptkennwort in die falschen Hände gerät. Ein separates lokales Administratorkennwort auf jedem Computer verhindert nicht unbedingt, dass eine böswillige Person auf einen PC zugreift, aber es verhindert die seitliche Ausbeutung anderer PCs erheblich.

Microsoft Local Administrator Password Solution (LAPS) kann dabei helfen.

In diesem Artikel erfahren Sie, wie Sie Ihre AD-verbundenen Computer durch die Einrichtung von LAPS schützen können.

Inhaltsverzeichnis

Was ist Microsoft LAPS?

LAPS ist ein wichtiger Bestandteil der Sicherheit einer Windows-Umgebung. LAPS ist ein Tool, das auf clevere Weise funktioniert; es randomisiert automatisch das lokale Administratorkennwort auf allen Domänencomputern, auf denen LAPS aktiviert ist, und ändert jedes Kennwort regelmäßig.

LAPS stellt sicher, dass Sie zufällige lokale Administratorkennwörter in Ihrer Domäne haben, und verhindert laterale Bewegungen von Hackern und Malware. Man könnte meinen, dass ein langes lokales Administratorkennwort auf dem Client Sie davor schützen könnte, aber das stimmt nicht.

Hacker können eine Pass-The-Hash-Methode verwenden, um sich schnell in Ihrer Domäne auszubreiten, und könnten mit derselben Methode sogar an die Anmeldedaten eines Domänenadministrators gelangen. LAPS verhindert diese Aktivitäten, indem es böswillige Personen dazu zwingt, ein Kennwort für jeden einzelnen Computer zu ermitteln.

LAPS in der Praxis

LAPS besteht aus drei Hauptbestandteilen:

Gesperrte AD-Attribute

LAPS speichert jedes lokale Administratorkennwort für jeden kontrollierten Computer in AD namens ms-Mcs-AdmPwd. LAPS muss auch wissen, wann die Passwörter ablaufen, um sie zu ändern. Deshalb speichert es auch ein weiteres AD-Attribut namens ms-Mcs-AdmPwdExpirationTime. Diese AD-Attribute können nur von bestimmten AD-Prinzipalen wie einer Gruppe oder einem Benutzer gelesen/geschrieben werden und sind auch für das Computerkonto schreibbar, das das Kennwort verwendet.

GPO-Einstellungen

Um LAPS auf einem Computer bereitzustellen und das Kennwort zu ändern, verfügt LAPS auch über eine Reihe von GPO-Einstellungen. Wenn das GPO mit einer Reihe von Computern verknüpft ist, werden die LAPS-Einstellungen an jeden Computer verteilt. Wenn der Computer die GPO-Einstellungen anwendet, verwendet LAPS eine spezielle DLL-Datei, um sie zu interpretieren.

Wenn LAPS sieht, dass das aktuelle Datum über das Ablaufdatum des Kennworts hinausgeht, wird es:

  • ein neues Kennwort nach dem Zufallsprinzip erstellen und als lokales Administratorkennwort festlegen.
  • das neue lokale Administratorkennwort in das Attribut Ms-Mcs-AdmPwd im AD schreiben.
  • Schreibt ein neues Ablaufdatum in das Attribut ms-Mcs-AdmPwdExpirationTime.

Durch diese clevere und doch einfache Methode bleiben die Domänencomputer noch sicherer.

Einrichten von LAPS

Nachdem wir nun genug Informationen haben, wollen wir uns ansehen, was LAPS tatsächlich kann! Die Einrichtung von LAPS ist nicht kompliziert, erfordert aber ein paar Schritte, die Sie in diesem Tutorial lernen werden. Diese sind:

  1. Installieren der LAPS-Verwaltungstools auf Ihrem Verwaltungsrechner.
  2. Erweitern des AD-Schemas, um die beiden benutzerdefinierten AD-Attribute hinzuzufügen, die LAPS verwendet.
  3. Einstellen der entsprechenden Berechtigungen für verschiedene Komponenten in AD.
  4. Erstellen des LAPS-GPO, das auf Windows-Computer angewendet wird.
  5. Verteilen der LAPS-GPO-Erweiterung auf den entsprechenden Windows-Computern.

Nachdem Sie die oben genannten Schritte ausgeführt haben, verfügen Sie über eine voll funktionsfähige LAPS-Umgebung, die sofort einsatzbereit ist!

Voraussetzungen

In diesem Artikel werden Sie LAPS in der Praxis einrichten. Wenn Sie mitmachen möchten, sollten Sie zunächst einige Voraussetzungen erfüllen.

  • Eine AD-Domäne (2003 und höher)
  • Ein Computer mit Windows (10 oder Server 2012+ wird empfohlen), auf dem RSAT für Active Directory installiert ist.
  • Zugriff auf ein Konto, das sowohl Mitglied der AD-Domänenadministratoren- als auch der Schemaadministratorengruppe ist.

Alle Beispiele in diesem Artikel verwenden eine AD-Domäne namens contoso.com.

Die beste Vorgehensweise für die Schemaadministratorgruppe besteht darin, nur dann Mitglied dieser Gruppe zu sein, wenn Sie die Berechtigungen benötigen.

Installieren der Microsoft LAPS-Verwaltungstools

Um loslegen zu können, müssen Sie zunächst die LAPS-Verwaltungstools auf Ihrem Administratorcomputer installieren. Diese Verwaltungstools installieren sowohl die LAPS-GPO-Erweiterung (falls ausgewählt) als auch die Verwaltungstools zur Konfiguration von LAPS.

  1. Laden Sie zunächst die Datei LAPS.x64.msi herunter, starten Sie sie als Administrator und klicken Sie auf Weiter.
Installation von Microsoft LAPS

2. Drücken Sie auf Weiter, bis Sie zum benutzerdefinierten Setup kommen, und klicken Sie dann auf Verwaltungstools und die gesamte Funktion wird auf der lokalen Festplatte installiert, um diese beiden Komponenten zu installieren. Wenn Sie nicht möchten, dass der aktuelle Rechner von LAPS verwaltet wird, wählen Sie AdmPwd GPO Extension.

Klicken Sie auf Management Tools

3. Klicken Sie auf Next bis die Installation abgeschlossen ist und beenden Sie das Installationsprogramm.

Sie haben nun die LAPS GPO-Erweiterungen (falls ausgewählt) und die Verwaltungstools installiert und wir können nun mit der Erweiterung des AD-Schemas und dem Hinzufügen unserer GPOs beginnen.

Erweiterung des AD-Schemas

Wie bereits erwähnt, verwendet LAPS zwei AD-Attribute namens ms-Mcs-AdmPwd und ms-Mcs-AdmPwdExpirationTime. Diese beiden Attribute sind keine Standardattribute und müssen dem AD-Schema hinzugefügt werden.

  1. Zunächst müssen Sie ein Mitglied der Gruppe „Domain Admins“ zur Gruppe „Schema Admins“ hinzufügen, wenn das Konto nicht bereits Mitglied ist. Wir nennen dies Ihr „Admin-Konto“.
  2. Starten Sie PowerShell als Ihr Admin-Konto und importieren Sie das PowerShell-Modul AdmPwd, indem Sie Import-module AdmPwd.PS ausführen.
  3. Nach dem Import des Moduls führen Sie den Befehl Update-AdmPwdADSchema aus, um das AD-Schema zu aktualisieren und die beiden AD-Attribute hinzuzufügen. Sie können die Ausgabe im folgenden Screenshot sehen.
Powershell Admin Account

Sie haben nun unser AD-Schema erweitert, um LAPS zu unterstützen, und sind bereit, Berechtigungen in Active Directory festzulegen.

Konfigurieren von Active Directory-Berechtigungen

Jeder Computer muss die Möglichkeit haben, sein lokales Administratorkennwort und das AD-Attribut Ablaufzeit zu aktualisieren. Dazu muss jeder Computer die Selbstschreibeerlaubnis für die AD-Attribute ms-Mcs-AdmPwd und ms-Mcs-AdmPwdExpirationTime besitzen. Glücklicherweise kann der Großteil dieser Arbeit mit dem AdmPwd PowerShell-Modul erledigt werden.

Den Computern erlauben, ihr Kennwort zu speichern

Zuerst muss sichergestellt werden, dass jeder Computer sein Kennwort im AD-Attribut ms-Mcs-AdmPwd speichern und im AD-Attribut ms-Mcs-AdmPwdExpirationTime aktualisieren kann, wenn dieses Kennwort abläuft. Das AdPwd PowerShell-Modul verfügt über einen Befehl zum Festlegen dieser Berechtigungen namens Set-AdmPwdComputerSelfPermission nach Organisationseinheit (OU), der für alle untergeordneten OUs gilt.

Führen Sie in PowerShell Set-AdmPwdComputerSelfPermission -OrgUnit 'OU=Workstations,DC=contoso,DC=com' aus und denken Sie daran, Ihre spezifische OU und den Domänennamen zu aktualisieren.

OU und Domänenname aktualisieren

Wenn Sie möchten, dass LAPS mehr OUs kontrolliert, wiederholen Sie den obigen Befehl für jede OU in AD.

Sperren von AD-Attributen durch Auffinden von erweiterten Rechten

Um sicherzustellen, dass nur die gewünschten Benutzer und Gruppen die Berechtigung zum Lesen und Zurücksetzen des lokalen Administratorkennworts jedes Computers haben, müssen Sie überprüfen, wer Zugriff hat. Insbesondere müssen Sie wissen, dass nur die Konten, die über „Erweiterte Rechte“ verfügen müssen, diese haben.

Um Konten mit erweiterten Rechten zu finden, führen Sie Find-AdmPwdExtendedRights -OrgUnit 'OU=Workstations,DC=contoso,DC=com' | Select -ExpandProperty ExtendedRightHolders aus und ersetzen Sie den Namen Ihrer OU und der Domäne.

Im folgenden Screenshot sehen Sie nun, dass CONTOSO\oe-the-admin und CONTOSO\MDT-service erweiterte Rechte für die OU Workstations haben.

Workstations OU

Die MDT-service-Berechtigung benötigt tatsächlich das erweiterte Recht, joe-the-admin jedoch nicht. Sie müssen nun die Berechtigung für „joe-the-admin“ entfernen.

Sie müssen diesen Vorgang für alle OUs wiederholen, für die Sie in einem früheren Schritt die Selbstschreibberechtigung festgelegt haben.

Entfernen von erweiterten Rechten

Wenn Sie alle Konten identifiziert haben, denen Sie die erweiterten Rechte entziehen möchten, ist es nun an der Zeit, dies tatsächlich zu tun.

  1. Öffnen Sie Active Directory-Benutzer und -Computer, klicken Sie im oberen Menü auf Ansicht und stellen Sie sicher, dass erweiterte Funktionen aktiviert sind. Wenn Sie die erweiterten Funktionen aktivieren, sehen Sie alle typischerweise versteckten OUs, wie im folgenden Screenshot gezeigt.
Versteckte OUs

2. Klicken Sie mit der rechten Maustaste auf die OU, für die Sie das erweiterte Recht entfernen möchten, und klicken Sie auf Eigenschaften.

Rechtsklick auf OU zum Entfernen

3. Klicken Sie auf die Registerkarte „Sicherheit“ und dann auf die Schaltfläche „Erweitert“.
4. Suchen Sie das Konto oder die Gruppe, für das/die Sie die erweiterten Rechte entfernen möchten, und entfernen Sie es/sie, indem Sie es/sie auswählen und auf „Entfernen“ klicken.

Registerkarte „Sicherheit“ zum Entfernen von Konten

5. Wiederholen Sie diese Schritte nach Bedarf für alle Prinzipale mit erweiterten Rechten.

Berechtigung zum Lesen und Zurücksetzen des lokalen Administratorkennworts erteilen

Nachdem Sie sichergestellt haben, dass nur geeignete Konten über erweiterte Rechte verfügen, müssen Sie nun zwei AD-Gruppen zum Lesen und Zurücksetzen des lokalen Administratorkennworts erstellen, die LAPS Workstations Password Read und LAPS Workstations Password Reset heißen.

Beachten Sie, dass die hier angegebenen Gruppennamen nicht zwingend sind. Sie können jeden beliebigen Gruppennamen verwenden.

Während die PowerShell-Konsole noch mit Ihrem Administratorkonto geöffnet ist, geben Sie die folgenden Befehle ein, um beiden AD-Gruppen die Berechtigung zum Lesen des lokalen Administratorkennworts für Computer in der OU „Workstations“ zu erteilen.

PS> Set-AdmPwdReadPasswordPermission -OrgUnit 'OU=Workstations,DC=contoso,DC=com' -AllowedPrincipals "LAPS Workstations Password Read"PS> Set-AdmPwdResetPasswordPermission -OrgUnit 'OU=Workstations,DC=contoso,DC=com' -AllowedPrincipals "LAPS Workstations Password Reset" 

Sie haben nun die oben genannten AD-Gruppen zum Lesen und Zurücksetzen lokaler Administratorkennwörter für Computer in der OU „Workstations“ aktiviert. Sie müssen nun die Administratoren oder Gruppen hinzufügen, die zum Lesen oder Zurücksetzen der Kennwörter erforderlich sind.

Erstellen eines zentralen Speichers für Gruppenrichtlinienvorlagen

Damit sich LAPS nach der Installation auf den Computern selbst aktivieren kann, erstellen Sie zunächst eine Gruppenrichtlinie, indem Sie die Gruppenrichtlinienvorlagen in den PolicyDefinition-Speicher importieren. Der PolicyDefinition-Speicher ist ein Ordner, der sich auf allen Domänencontrollern befindet.

Niemals ein LAPS-GPO aktivieren, das auf die Domänencontroller abzielt. Es wird nicht unterstützt und kann zu unerwarteten Problemen führen.

  1. Wählen Sie einen Domänencontroller in AD aus; jeder Domänencontroller funktioniert.
  2. Stellen Sie sicher, dass ein \contoso.com\SYSVOL\Policies\PolicyDefinitions existiert. Wenn nicht, erstellen Sie ihn jetzt.
  3. Kopieren Sie den Inhalt von C:\Windows\PolicyDefinitions auf Ihrem Admin-Computer (der, auf dem Sie LAPS installiert haben) in den Ordner \\contoso.com\SYSVOL\Policies\PolicyDefinitions auf dem Domänencontroller.

Erstellen des GPO

Kopieren wir nun die LAPS-GPO-Vorlagen in den zentralen Speicher (Ordner PolicyDefinitions).

  1. Öffnen Sie die Gruppenrichtlinienverwaltung unter Ihrem Administratorkonto, klicken Sie mit der rechten Maustaste auf die OU, in der Sie LAPS aktivieren möchten, und klicken Sie auf Link an Existing GPO…
Gruppenrichtlinienverwaltung

2. Navigieren Sie zu Computerkonfiguration -> Administrative Vorlagen -> LAPS und setzen Sie Enable local admin password management auf Enabled. Wenn Sie andere Anforderungen an die Passwortkomplexität haben, bearbeiten Sie die Passworteinstellungen entsprechend.

GPO mit allen OUs verknüpfen

Sie sind fast fertig! Verknüpfen Sie nun dieses GPO mit allen OUs, in denen Sie LAPS verwenden möchten.

Bereitstellen der LAPS-GPO-Erweiterung

Wenn das GPO auf alle zutreffenden OUs mit Computern darin angewendet wurde, müssen Sie nun die LAPS-GPO-Erweiterung bereitstellen. Sie haben mehrere Möglichkeiten, diese Erweiterung zu installieren, indem Sie entweder das MSI installieren (wie zuvor gezeigt) oder die LAPS-DLL-Datei registrieren.

Wenn Sie sich für die Installation des MSI entscheiden, führen Sie auf jedem Computer innerhalb einer LAPS-kontrollierten OU den folgenden Befehl aus, um LAPS zu aktivieren.

> msiexec /q /i \server\share\LAPS.x64.msi

Wenn Sie sich für die Aktivierung von LAPS durch Registrierung der DLL entscheiden, können Sie dies mit dem folgenden Befehl tun.

> regsvr32.dll \server\share\AdmPwd.dll

Sie können jedes beliebige Remote-Ausführungstool verwenden, um diese Befehle auf den Computern auszuführen.

Bereitstellen der LAPS MSI mit einem GPO

Die Verwendung eines GPO ist die einfachste Methode, um sicherzustellen, dass die LAPS GPO-Erweiterung auf allen Computern installiert ist.

  1. Kopieren Sie LAPS.x64.msi auf eine Netzwerkfreigabe, auf die alle Domänencomputer zugreifen können.
  2. Öffnen Sie die Gruppenrichtlinienverwaltung auf Ihrem Admin-Computer und erstellen Sie ein GPO mit dem Namen Install LAPS oder etwas Ähnlichem.
Erstellen eines GPO mit dem Namen Install LAPS

3. Klicken Sie mit der rechten Maustaste auf das GPO Install LAPS, klicken Sie auf Bearbeiten und navigieren Sie zu Computerkonfiguration -> Richtlinien -> Softwareeinstellungen -> Softwareinstallation.

LAPS GPO Softwareinstallation

4. Klicken Sie mit der rechten Maustaste auf Softwareinstallation und navigieren Sie zu Neu-> Paket…

GPO Neues Paket

5. Navigieren Sie zu der Freigabe, in die Sie LAPS.x64.msi kopiert haben, wählen Sie sie aus, klicken Sie auf OK und wählen Sie Zugewiesen.

Zuweisung von LAPS.x64.msi

6. Verknüpfen Sie nun das GPO mit denselben OUs, für die Sie LAPS konfiguriert haben. Jetzt können Sie LAPS testen!

LAPS testen

Um sicherzustellen, dass LAPS auf den kontrollierten Computern wie vorgesehen funktioniert, erzwingen wir nun auf einem der Computer die Anwendung des oben genannten GPO und sehen, was passiert.

  1. Starten Sie einen Computer neu, der sich unter einer der soeben konfigurierten OUs befindet. Sobald der Computer wieder hochgefahren ist, sollte er mit der Installation von LAPS beginnen.
  2. Wenn LAPS auf dem Computer installiert ist, starten Sie den Computer erneut und öffnen Sie eine PowerShell-Konsole als Administrator auf Ihrem Admin-Computer als ein Konto, das Mitglied der AD-Gruppen „LAPS Workstation Password Read“ und „LAPS Workstation Password Reset“ ist.
  3. Führen Sie den Befehl Get-AdmPwdPassword <computername> unter Verwendung des Computernamens aus, auf dem Sie gerade neu gestartet und LAPS installiert haben. Wenn alles geklappt hat, sehen Sie eine ähnliche Ausgabe wie im folgenden Screenshot.

LAPS-Installationsausgabe

4. Versuchen Sie nun, sich mit dem oben angezeigten Kennwort bei dem von LAPS kontrollierten Computer anzumelden. Wenn es geklappt hat, sollten Sie drin sein.
5. Versuchen Sie nun, das Passwort zurückzusetzen, indem Sie Reset-AdmPwdPassword <ComputerName> ausführen und den Computer neu starten. Sehen Sie im folgenden Screenshot, wie die Passwörter geändert wurden?

LAPS Password Reset

Sie haben nun LAPS in Ihrer Umgebung in Betrieb. Und obwohl die Verwaltung recht einfach ist, gibt es ein paar Dinge, die Sie wissen sollten…

Tipps und Tricks für die Verwendung von LAPS in der Praxis

Die oben beschriebene Einrichtung reicht zwar für die meisten kleineren Umgebungen aus, ist aber möglicherweise zu unsicher oder bietet nicht das für größere Organisationen erforderliche Prüfniveau. Hier sind ein paar Tipps, wie man es in der Praxis umsetzen kann.

1. Aktivieren Sie die Überwachung

Eine Überwachung, wenn jemand ein Kennwort liest oder zurücksetzt, ist wichtig, vor allem, wenn man bedenkt, dass man Alarme damit verknüpfen kann, wenn jemand das Kennwort aller Computer liest. Glücklicherweise bietet das AdmPwd-Modul ein Cmdlet, das genau das ermöglicht.

PS> Set-AdmPwdAuditing -AuditedPrincipals Everyone -OrgUnit "OU=Workstations,DC=contoso,DC=com"

2. Sicherstellen, dass kein Benutzer das AD-Attribut ms-mcs-AdmPwd direkt lesen kann

Eine Möglichkeit, sicherzustellen, dass ein Benutzer das AD-Attribut ms-mcs-AdmPwd nicht lesen kann, besteht darin, eine Self-Service-Methode zum Abrufen des lokalen Administratorkennworts eines Computers zu erstellen. Auch wenn dies den Rahmen dieses Artikels sprengt, sollten Sie sich Tools wie JEA oder WebJEA ansehen, wenn Sie kein entsprechendes Self-Service-Portal haben.

3. Zurücksetzen des Ms-Mcs-AdmPwdTime-Attributs während des Disk-Imaging

Sie müssen daran denken, das Ms-Mcs-AdmPwdTime-Attribut zurückzusetzen, wenn Sie einen LAPS-gesteuerten Computer neu importieren, da sonst die Kennwortänderung nicht ausgelöst wird und das lokale Administratorkennwort beibehalten wird, das durch das Image vorgegeben wurde. Es wird jedoch nach Ablauf der Ms-Mcs-AdmPwdTime ausgelöst.

Sie können den folgenden PowerShell-Befehl verwenden, um das ExpirationTime ohne das AdmPwd-Modul zurückzusetzen:

# With RSAT Get-ADComputer Workstation1 | Set-ADObject -Replace @{"ms-mcs-AdmPwdExpirationTime"=(Get-Date)} # Without RSAT$Computer = New-Object DirectoryServices.DirectoryEntry "LDAP://CN=Workstation1,OU=Workstations,DC=contoso,DC=com"$Computer.'ms-Mcs-AdmPwdExpirationTime'.Clear()$Computer.CommitChanges()

4. Denken Sie daran, dass das ms-Mcs-AdmPwd-Attribut im AD-Papierkorb verbleibt

Wenn Sie ein Objekt in AD löschen und den AD-Papierkorb aktiviert haben, entfernt AD normalerweise wichtige Attribute; glücklicherweise ist ms-Mcs-AdmPwd davor geschützt!

5. LAPS ist nicht für den temporären Zugriff gedacht

Auch wenn es verlockend ist, ist LAPS nicht dafür gedacht, temporären Zugriff auf Lieferanten, Benutzer und andere Arten von Konten zu gewähren. Verwenden Sie statt LAPS eine AD-Gruppe, die ein lokaler Administrator dieses speziellen Computers ist, und verwenden Sie TimeToLive für Gruppenmitgliedschaften.

Fazit

Sie haben jetzt gelernt, wie man LAPS einsetzt, seine Berechtigungen einstellt und einige Tipps und Tricks, um es sicherer zu machen. In einer Umgebung, in der LAPS eingesetzt wird, ändern sich alle lokalen Administratorkennwörter regelmäßig und automatisch. Dadurch wird das Risiko, dass ein Computer, der mit einer Domäne verbunden ist, von Hackern oder Malware übernommen wird, erheblich verringert und erspart Ihnen hoffentlich eine Menge Kopfschmerzen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.