Sichern verwalteter Dienstkonten (gMSA) in Active Directory

Sichern verwalteter Dienstkonten (gMSA) in Active Directory

08.04.2025

Dieser technische und lehrreiche Artikel soll Sicherheitsanalysten, IT-Administratoren und Systemingenieuren bei der Implementierung und Sicherung von Group Managed Service Accounts (gMSA) in Active Directory helfen. gMSAs bieten eine robuste Lösung für die Sicherheitsherausforderungen von Dienstkonten, indem sie die Passwortverwaltung automatisieren und die Verwaltung vereinfachen [1].

Einführung

Herkömmliche Dienstkonten mit statischen Passwörtern stellen ein erhebliches Risiko dar. gMSAs (Group Managed Service Accounts) erweitern die Funktionalität von MSAs (Managed Service Accounts) und ermöglichen die Nutzung eines einzelnen Dienstkontos durch mehrere Server, wobei Active Directory automatisch die Passwortrotation und Schlüsselverteilung ohne manuelles Eingreifen verwaltet [2].

Dieser praktische Leitfaden behandelt die Voraussetzungen, das Erstellen und Konfigurieren von gMSAs, wie man sie mit Diensten und geplanten Aufgaben verknüpft, sowie Best Practices, um sicherzustellen, dass Ihre Dienstkonten effizient geschützt und verwaltet werden.

Warum sind gMSAs so wichtig?

  • Automatische Passwortverwaltung: Komplexe und lange Passwörter werden automatisch alle 30 Tage von Active Directory generiert und rotiert.
  • Bereitstellung auf mehreren Servern: Ein einzelnes gMSA kann von mehreren Servern verwendet werden, was die Verwaltung in verteilten Umgebungen vereinfacht.
  • Prinzip der geringsten Rechte: Erleichtert die Erteilung der minimal erforderlichen Berechtigungen.
  • Verbesserte Prüfung: Vereinfacht die Prüfung, da Dienstidentitäten klar definiert und nachvollziehbar sind.

Voraussetzungen

  1. Domänencontroller (DCs) mit Windows Server 2012 oder höher.
  2. Domänenfunktionsebene (DFL) von Windows Server 2012 oder höher.
  3. Active Directory-Modul für Windows PowerShell.
  4. Domänen-Mitgliedsserver, die gMSA verwenden.
  5. Sicherheitsgruppe für Hosts: Eine Sicherheitsgruppe in Active Directory, die die Server enthält, die gMSA verwenden.

Schritt für Schritt: gMSAs implementieren und sichern

1. Konfigurieren des KDS-Root-Key-Dienstes

Der KDS Root Key Service ist erforderlich, damit Active Directory Passwörter für gMSAs generieren kann. Es muss einmal pro Gesamtstruktur konfiguriert werden [3].

  1. Öffnen Sie Windows PowerShell als Administrator auf einem Domänencontroller.
  2. Überprüfen Sie, ob der KDS Root Key Service bereits konfiguriert ist: „Powershell Get-KdsRootKey „
  3. Wenn kein Schlüssel zurückgegeben wird, erstellen Sie einen neuen KDS-Root-Schlüssel. Verwenden Sie für die Produktion „Add-KdsRootKey -EffectiveTime (Get-Date).AddHours(-10)“, um die Replikation zu aktivieren. Zum sofortigen Testen verwenden Sie: „Powershell Add-KdsRootKey -EffectiveImmediately „

2. Erstellen der Sicherheitsgruppe für Hosts

Diese Gruppe enthält die Server, die das gMSA-Passwort wiederherstellen dürfen.

  1. Öffnen Sie Active Directory-Benutzer und -Computer (dsa.msc).
  2. Erstellen Sie eine neue Sicherheitsgruppe (z. B. „gMSA_Hosts_ServicoX“) mit dem Geltungsbereich „Global“ und geben Sie „Sicherheit“ ein.
  3. Fügen Sie dieser Gruppe die Computer (Server) hinzu, die gMSA verwenden werden (z. B. „ServidorApp01$“, „ServidorApp02$“).

3. Erstellen des gMSA

Jetzt erstellen wir das gMSA mit PowerShell.

  1. Öffnen Sie Windows PowerShell als Administrator auf einem Domänencontroller.
  2. Verwenden Sie das Cmdlet „New-ADServiceAccount“: „Powershell New-ADServiceAccount -Name gMSA_ServicoX -DNSHostName gMSA_ServicoX.contoso.com -PrincipalsAllowedToRetrieveManagedPassword „gMSA_Hosts_ServicoX“ „
    • Erklärung: Der Parameter „PrincipalsAllowedToRetrieveManagedPassword“ gibt die Sicherheitsgruppe an, die das gMSA-Passwort abrufen kann. Diese Gruppe muss die Server enthalten, auf denen der Dienst ausgeführt wird.

4. Installieren und Testen von gMSA auf Hostservern

Auf Servern, die gMSA verwenden, müssen Sie es installieren und seine Funktionalität testen.

  1. Öffnen Sie auf jedem Servermitglied der Gruppe „gMSA_Hosts_ServicoX“ Windows PowerShell als Administrator.
  2. Installieren Sie gMSA: „Powershell Install-ADServiceAccount -Identity gMSA_ServicoX „
  3. Testen Sie, ob das gMSA installiert und funktionsfähig ist: „Powershell Test-ADServiceAccount -Identity gMSA_ServicoX „
    • Erwartetes Ergebnis: Die Ausgabe sollte „True“ sein, was anzeigt, dass gMSA zur Verwendung auf dem Server bereit ist.

5. Verknüpfen des gMSA mit einem Dienst

  1. Auf dem Server, auf dem sich der Dienst befindetÖffnen Sie nach der Ausführung die Services-Konsole („services.msc“).
  2. Suchen Sie den Dienst, den Sie konfigurieren möchten.
  3. Klicken Sie mit der rechten Maustaste auf den Dienst und wählen Sie Eigenschaften.
  4. Wählen Sie auf der Registerkarte Anmelden die Option Dieses Konto aus.
  5. Geben Sie im Feld Dieses Konto den Namen Ihres gMSA gefolgt von einem „$“ ein, zum Beispiel: „gMSA_ServicoX$“.
  6. Lassen Sie die Passwortfelder leer. Active Directory verwaltet das Passwort automatisch.
  7. Klicken Sie auf Übernehmen und OK.
  8. Starten Sie den Dienst neu, damit die Änderungen wirksam werden.

6. Verwendung von gMSA mit geplanten Aufgaben

  1. Öffnen Sie auf dem Server den Taskplaner („taskschd.msc“).
  2. Erstellen Sie eine neue Aufgabe oder bearbeiten Sie eine bestehende.
  3. Klicken Sie auf der Registerkarte Allgemein auf Benutzer oder Gruppe ändern....
  4. Geben Sie im Feld „Geben Sie den Namen des auszuwählenden Objekts ein“ den Namen Ihres gMSA gefolgt von einem „$“ ein, zum Beispiel: „gMSA_ServicoX$“.
  5. Klicken Sie auf Namen überprüfen und dann auf OK.
  6. Lassen Sie die Passwortfelder leer.
  7. Konfigurieren Sie die anderen Optionen für geplante Aufgaben und klicken Sie auf OK.

Best Practices und Sicherheitstipps

  • Prinzip der geringsten Rechte: Gewähren Sie gMSA nur die Berechtigungen, die zur Ausführung seiner Funktion erforderlich sind. Verwenden Sie keine gMSAs mit Domänenadministratorrechten.
  • Dedizierte Sicherheitsgruppen: Verwenden Sie bestimmte Sicherheitsgruppen für „PrincipalsAllowedToRetrieveManagedPassword“, um zu steuern, welche Server gMSA verwenden können.
  • Überprüfung: Überwachen Sie die Verwendung von gMSAs mithilfe von Active Directory-Sicherheitsprotokollen, um anomale Aktivitäten zu erkennen.
  • KDS-Root-Key-Schutz: Stellen Sie sicher, dass Domänencontroller sicher sind, da der KDS-Root-Schlüssel für die Sicherheit von gMSAs von entscheidender Bedeutung ist.
  • Alte Dienstkonten entfernen: Migrieren Sie Dienste zu gMSAs und deaktivieren oder löschen Sie alte Dienstkonten, die statische Passwörter verwendeten.
  • Dokumentation: Führen Sie Aufzeichnungen darüber, welche gMSAs verwendet werden, welche Dienste sie ausführen und auf welchen Servern.

Fazit

Group Managed Service Accounts (gMSA) sind eine wichtige Komponente zur Verbesserung Ihres Active Directory-Sicherheitsstatus, insbesondere bei der Verwaltung von Dienstidentitäten. Durch die Automatisierung der Passwortrotation, die Vereinfachung der Bereitstellung in verteilten Umgebungen und die Erleichterung der Anwendung des Prinzips der geringsten Rechte reduzieren gMSAs die Angriffsfläche und die Verwaltungskomplexität erheblich. Die ordnungsgemäße Implementierung und Verwaltung von gMSAs sind entscheidende Schritte zum Schutz Ihrer Dienste und Anwendungen vor Cyber-Bedrohungen.

Referenzen

[1] Microsoft. (2023). Gruppenverwaltete Dienstkonten (gMSA) in Active Directory. [2] Microsoft. (2023). Übersicht über verwaltete Dienstkonten. [3] Microsoft. (2023). Active Directory Key Distribution Service (KDS).