Hallo Admins,

heute mal nichts zu Exchange, sondern zu Windows Server / Clients im Allgemeinen. Dieser Beitrag ist im Zuge der Vorbereitung für die nächste EUGO entstanden.

Was ist LAPS?

LAPS steht für Local Administrator Password Solution und beinhaltet die globale Konfiguration ausgewählter Server / Clients für das lokale Administrator-Kennwort. Das Kennwort wird automatisch generiert und in einem ActiveDirectory Attribut auf dem Computer Objekt gespeichert. Zudem wird ein weiteres Attribut mit dem Ablaufdatum des Kennworts angelegt.

Per Gruppenrichtlinie CSE wird die Komplexität des Kennworts konfiguriert und auf die Server / Clients angewandt. Insgesamt sind vier Komponenten beteiligt:

  • LAPS AD Erweiterung
  • LAPS PowerShell Modul zur Verwaltung
  • LAPS Client Erweiterung (MSI oder DLL)
  • Optional: LAPS UI – Grafische Verwaltungskonsole

Die AD-Erweiterung bringt zwei neue Attribute ein:

  • ms-Mcs-AdmPwd – Speichert das Kennwort im Klartext
  • ms-Mcs-AdmPwdExpirationTime – Speichert das Zeitintervall, in dem das Kennwort erneuert wird

Mittels PowerShell Modul wird definiert, welche Gruppe / welcher Benutzer auf die erweiterten Attribute zugreifen darf und somit das Kennwort einsehen kann. Benutzer ohne Berechtigung können den Inhalt der Attribute nicht einsehen.

Das PowerShell Modul kann ebenfalls zum Einsehen / Zurücksetzen der Kennwörter verwendet werden. Neben dem PowerShell Modul kann auch die optionale LAPS UI installiert werden, um das Kennwort einzusehen.

Das LAPS MSI-Paket kann via GPO, Softwareverteilung oder per Hand installiert werden. Wird nur die DLL ausgerollt und registriert, ist das Produkt nicht in der Programmliste aufgeführt.

Schritt 1 – LAPS AD Erweiterung

Um in die vorhandene Umgebung LAPS zu implementieren, muss wie eingangs erwähnt das AD erweitert werden. Ich installiere LAPS auf dem Domänen-Controller.

Download LAPS 

  1. Setup starten –> Weiter (Bild 1)
  2. Lizenz akzeptieren –> Weiter
  3. Komponenten auswählen –> Weiter (Bild 2)
  4. Installation (Bild 3)
  5. Fertigstellen

Nachdem das Programm installiert wurde, kann die AD-Erweiterung eingespielt werden:

  1. PowerShell öffnen –>
    Import-Module AdmPwd.PS

    (Bild 4)

  2. AD-Schema erweitern –>
    Update-AdmPwdADSchema

    (Bild 5)

Hinweis: Replikation abwarten bei mehreren DCs und Standorten ;)

Schritt 2 – Berechtigungen für Computerkonten

Die Schreibberechtigungen für die Attribute „ms-Mcs-AdmPwd“ und „ms-Mcs-AdmPwdExpirationTime“ müssen für alle Computerkonten dem Built-in Konto hinzugefügt werden. Somit sind die Systeme in der Lage, das eigene Kennwort zu aktualisieren.

Ich setze die Berechtigung auf die OU, in der alle Systeme enthalten sind, die via LAPS ein Kennwort erhalten sollen.

  1. PowerShell öffnen –>
    Set-AdmPwdComputerSelfPermission -OrgUnit "Sichel IT"

    (Bild 6)

Schritt 3 – Benutzer berechtigen

Um das Kennwort anzuzeigen, wird vom Computerkonto das erweiterte Recht „CONTROL_ACCESS“ auf dem Attribut ms-Mcs-AdmPwd benötigt. Dazu wird mittels PowerShell-Befehl für die zuvor ausgewählte OU der Server / Clients ein Benutzer oder eine Benutzergruppe berechtigt.

Tipp: Erstellen einer neuen AD-Gruppe mit den Admins / Helpdesk-Benutzern, die auf die Kennwörter zugreifen dürfen.

  1. PowerShell öffnen –>
    Set-AdmPwdReadPasswordPermission -OrgUnit "Sichel IT" -AllowedPrincipals LAPS-PWAdmins

    (Bild 7)

  2. Set-AdmPwdResetPasswordPermission -OrgUnit "Sichel IT" -AllowedPrincipals LAPS-PWAdmins

    (Bild 8)

Mit den beiden Befehlen wird die Benutzergruppe berechtigt, das Password zu lesen und zurückzusetzen.

Mit folgendem Befehl kann eingesehen werden, welche Gruppen / Benutzer die Berechtigungen innehaben:

Find-AdmPwdExtendedRights -Identity "Sichel IT"

(Bild 9)

Schritt 4 – Clients anpassen / MSI verteilen

Nachdem alle Anpassungen im AD getätigt wurden, kann der Server oder auch Windows Client nun um LAPS erweitert werden. Dazu wird, wie eingangs erwähnt, die DLL verteilt und registriert oder das Paket via Softwareverteilung installiert.

Letzteres ist für mich interessanter, daher werde ich diesen Weg beschreiben. Ich nutze die Verteilung und Konfiguration via Gruppenrichtlinie. Das Installationspaket ist an einem zentralen Speicherort hinterlegt ( Fileshare).

  1. Gruppenrichtlinien-Verwaltung öffnen
  2. Neue Gruppenrichtlinie erstellen (Benutzerkonfigurationseinstellungen deaktiviert)
  3. Computerkonfiguration –> Richtlinien –> Softwareeinstellungen –> Softwareinstallation
    1. Rechtsklick –> Neu –> Paket
    2. Pfad angeben „\\sichel.loc\SYSVOL\sichel.loc\LAPS\LAPS.x64.msi“
    3. Software bereitstellen –> Zugewiesen (Bild 10)
  4. Computerkonfiguration –> Richtlinien –> Administrative Vorlagen –> LAPS
    1. „Password Settings „aktivieren (Bild 11)
    2. „Enable loacal admin Password Management“ aktivieren (Bild 12)
  5. Gruppenrichtlinie auf die OU verknüpfen (Bild 13)
  6. Fertig

Schritt 5 – Kennwort auslesen

Via GPO wurde LAPS nun auf den Servern / Clients installiert (Bild 14) und ist in der Programm- / Features-Liste aufgelistet(Bild 15).

Nachdem auch die CSE für LAPS auf den Client angewandt wurde, kann das Kennwort mittels grafischer Oberfläche LAPS UI, der PowerShell oder gar via LDAP-Abfrage angezeigt werden.

Abfrage via GUI

Über die installierte GUI kann das Kennwort ausgelesen werden.

  • Gui starten –> Server angeben
  • Kennwort auslesen (Bild 16)

Abfrage via PowerShell

  1. Auf einem Computer mit dem installierten LAPS- PowerShell-Modul anmelden
  2. PowerShell starten:
    Get-AdmPwdPassword -ComputerName app1

    (Bild 17)

Abfrage via LDAP

Aufgrund der Tatsache. dass die Speicherung des Kennworts im Klartext auf dem AD-Attribut „MS-Mcs-AdmPwd“ hinterlegt ist (Bild 18), kann es auch via LDAP Abfrage ausgelesen werden:

  • PowerShell mit AD-Modul starten (Bild 19)
  • Get-ADComputer -LdapFilter "(ms-Mcs-AdmPwd=*)" -Properties Name,ms-Mcs-AdmPwd,ms-Mcs-AdmPwdExpirationTime

Fazit

LAPS ist eine einfache und schnell zu realisierende Möglichkeit, lokale Administrator-Kennwörter zu verwalten. Durch die rasche Bereitstellung der Clientpakete und die unkomplizierte Verwaltung via GPO sollte der Einsatz „Pflicht“ sein.

Das Auslesen der Kennwörter wie auch das Zurücksetzen gestaltet sich unkompliziert. Die einfachste Variante ist das LAPS UI, das auch auf dem System des HelpDesk-Mitarbeiters installiert werden kann.

Hier sehe ich die großen Vorteile dieser Lösung. Denn ein zentraler HelpDesk hat so die Möglichkeit, Systeme lokal zu administrieren oder gar Standort-Administratoren Berechtigungen einzuräumen. Nachdem der Standort-Administrator die Arbeiten am System abgeschlossen hat, kann das Kennwort zurückgesetzt werden.

Mittels LAPS ist ein global gültiges Administrator-Kennwort auf allen Arbeitsstationen Geschichte! :)

 

Wie üblich alle Bilder hier noch mal in der Übersicht:

Gruß Andi