Das Erstellen der keytab-Datei

13. Dezember 2023

ID 183739

Wenn Sie bereits eine keytab-Datei zur Authentifizierung mithilfe von Single Sign-On erstellt haben, können Sie diese Datei zur Konfiguration der Kerberos-Authentifzierung auf dem Proxyserver verwenden.

Sie können ein Benutzerkonto für die Authentifizierung in allen Cluster-Knoten verwenden. Dazu ist es erforderlich, die keytab-Datei, die die Namen des Subjekt-Dienstes (im Weiteren auch „SPN“) enthält, für jeden dieser Knoten zu erstellen. Beim Erstellen der keytab-Datei muss ein Attribut für die Generation von Salt (salt, Modifikator der Eingabe der Hash-Funktion) verwendet werden.

Das generierte Salt muss auf eine beliebige geeignete Art und Weise zwecks späteren Hinzufügens von neuen SPN in die keytab-Datei gespeichert werden.

Sie können ebenso ein separates Active Directory-Benutzerkonto für jeden Cluster-Knoten erstellen, für den Sie die Kerberos-Authentifizierung einstellen möchten.

Erstellt wird die Keytab-Datei entweder auf dem Server des Domänencontrollers oder auf einem in der Windows-Domäne befindlichen Computer mit Windows Server unter Verwendung eines Benutzerkontos mit der Berechtigung des Domänenadministrators.

Um eine keytab-Datei mithilfe eines Benutzerkonto zu erstellen:

  1. Erstellen Sie im Snap-In Active Directory Users and Computers ein Benutzerkonto (z.B. mit dem Namen control-user).
  2. Um den Kryptoalgorithmus AES256-SHA1 zu verwenden, gehen Sie im Snap-In Active Directory Users and Computers wie folgt vor:
    1. Öffnen Sie die Eigenschaften des erstellten Benutzerkontos.
    2. Auf der Registerkarte Account werden das Kontrollkästchen This account supports Kerberos AES 256 bit encryption aktivieren.
  3. Erstellen Sie eine keytab-Datei für den Benutzer control-user mithilfe des Dienstprogramms ktpass. Führen Sie dazu in der Befehlszeile den folgenden Befehl aus:

    C:\Windows\system32\ktpass.exe -princ HTTP/<vollständiger Domänenname (FQDN) des Verwaltungsknotens>@<realm Name der Active Directory Domäne in Großbuchstaben> -mapuser control-user@<realm Name der Active Directory Domäne in Großbuchstaben> -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * +dumpsalt -out <Dateipfad>\<Dateiname>.keytab

    Das Dienstprogramm fragt während der Befehlsausführung das Kennwort des Benutzers control-user ab.

    In der erstellten keytab-Datei wird der SPN des Verwaltungsknotens hinzugefügt. Auf dem Bildschirm wird das generierte Salt angezeigt: Hashing password with salt "<Hash-Wert>".

  4. Fügen Sie für jeden Cluster-Knoten in der keytab-Datei den Eintrag SPN hinzu. Führen Sie dazu folgenden Befehl aus:

    C:\Windows\system32\ktpass.exe -princ HTTP/<vollständiger Domänenname (FQDN) des Knotens>@<realm Name der Active Directory Domäne in Großbuchstaben> -mapuser control-user@<realm Name der Active Directory Domäne in Großbuchstaben> -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -in <Dateipfad und -name der zuvor erstellten Datei>.keytab -out <Dateipfad und neuer Name>.keytab -setupn -setpass -rawsalt "<Hash-Wert des Salz, der bei der Erstellung der keytab-Datei bei Schritt 3 erhalten wurde>"

    Das Dienstprogramm fragt während der Befehlsausführung das Kennwort des Benutzers control-user ab.

Die keytab-Datei wird erstellt. Diese Datei enthält alle hinzugefügten SPN der Cluster-Knoten.

Beispiel:

Sie wollen z.B. eine keytab-Datei erstellen, die SPN-Namen von 3 Knoten enthält: control-01.test.local, secondary-01.test.local und secondary-02.test.local.

Um im Ordner C:\keytabs\ eine Datei mir dem Namen filename1.keytab zu erstellen, die den SPN des Verwaltungsknotens enthält, führen Sie folgenden Befehl aus:

C:\Windows\system32\ktpass.exe -princ HTTP/control-01.test.local@TEST.LOCAL -mapuser control-user@TEST.LOCAL -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * +dumpsalt -out C:\keytabs\filename1.keytab

Angenommen, Sie haben das Salt „TEST.LOCALHTTPcontrol-01.test.local“ erhalten.

Um einen weiteren SPN hinzuzufügen, führen Sie folgenden Befehl aus:

C:\Windows\system32\ktpass.exe -princ HTTP/secondary-01.test.local@TEST.LOCAL -mapuser control-user@TEST.LOCAL -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -in C:\keytabs\filename1.keytab -out C:\keytabs\filename2.keytab -setupn -setpass -rawsalt "TEST.LOCALHTTPcontrol-01.test.local"

Um einen dritten SPN hinzuzufügen, führen Sie folgenden Befehl aus:

C:\Windows\system32\ktpass.exe -princ HTTP/secondary-02.test.local@TEST.LOCAL -mapuser control-user@TEST.LOCAL -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -in C:\keytabs\filename2.keytab -out C:\keytabs\filename3.keytab -setupn -setpass -rawsalt "TEST.LOCALHTTPcontrol-01.test.local"

Als Ergebnis wird eine Datei mit dem Namen filename3.keytab mit allen drei hinzugefügten SPN erstellt.

Um eine keytab-Datei mithilfe eines separaten Benutzerkontos für jeden Knoten zu erstellen:

  1. Erstellen Sie im Snap-In Active Directory Users and Computers je ein separates Benutzerkonto für jeden Cluster-Knoten (z.B. Benutzerkonten mit den Namen control-user, secondary1-user, secondary2-user usw.).
  2. Um den Kryptoalgorithmus AES256-SHA1 zu verwenden, so gehen Sie im Snap-In Active Directory Users and Computers wie folgt vor:
    1. Öffnen Sie die Eigenschaften des erstellten Benutzerkontos.
    2. Auf der Registerkarte Account werden das Kontrollkästchen This account supports Kerberos AES 256 bit encryption aktivieren.
  3. Erstellen Sie eine keytab-Datei für den Benutzer control-user mithilfe des Dienstprogramms ktpass. Führen Sie dazu in der Befehlszeile den folgenden Befehl aus:

    C:\Windows\system32\ktpass.exe -princ HTTP/<vollständiger Domänenname (FQDN) des Verwaltungsknotens>@<realm Name der Active Directory Domäne in Großbuchstaben> -mapuser control-user@<realm Name der Active Directory Domäne in Großbuchstaben> -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -out <Dateipfad>\<Dateiname>.keytab

    Das Dienstprogramm fragt während der Befehlsausführung das Kennwort des Benutzers control-user ab.

    In der erstellten keytab-Datei wird der SPN des Verwaltungsknotens hinzugefügt.

  4. Fügen Sie für jeden Cluster-Knoten in der keytab-Datei den Eintrag SPN hinzu. Führen Sie dazu folgenden Befehl aus:

    C:\Windows\system32\ktpass.exe -princ HTTP/<vollständiger Domänenname (FQDN) des Knotens>@<realm Name der Active Directory Domäne in Großbuchstaben> -mapuser secondary1-user@<realm Name der Active Directory Domäne in Großbuchstaben> -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -in <Dateipfad und -name der zuvor erstellen Datei>.keytab -out <Dateipfad und neuer Name>.keytab

    Das Dienstprogramm fragt während der Befehlsausführung das Kennwort des Benutzers secondary1-user ab.

Die keytab-Datei wird erstellt. Diese Datei enthält alle hinzugefügten SPN der Cluster-Knoten.

Beispiel:

Sie wollen z.B. eine keytab-Datei erstellen, die SPN-Namen von 3 Knoten enthält: control-01.test.local, secondary-01.test.local und secondary-02.test.local.

Um im Ordner C:\keytabs\ eine Datei mir dem Namen filename1.keytab zu erstellen, die den SPN des Verwaltungsknotens enthält, führen Sie folgenden Befehl aus:

C:\Windows\system32\ktpass.exe -princ HTTP/control-01.test.local@TEST.LOCAL -mapuser control-user@TEST.LOCAL -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -out C:\keytabs\filename1.keytab

Um einen weiteren SPN hinzuzufügen, führen Sie folgenden Befehl aus:

C:\Windows\system32\ktpass.exe -princ HTTP/secondary-01.test.local@TEST.LOCAL -mapuser secondary1-user@TEST.LOCAL -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -in C:\keytabs\filename1.keytab -out C:\keytabs\filename2.keytab

Um einen dritten SPN hinzuzufügen, führen Sie folgenden Befehl aus:

C:\Windows\system32\ktpass.exe -princ HTTP/secondary-02.test.local@TEST.LOCAL -mapuser secondary2-user@TEST.LOCAL -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -in C:\keytabs\filename2.keytab -out C:\keytabs\filename3.keytab

Als Ergebnis wird eine Datei mit dem Namen filename3.keytab mit allen drei hinzugefügten SPN erstellt.

War dieser Artikel hilfreich?
Helfen Sie uns, diesen Artikel zu verbessern. Wählen Sie den Grund für Ihre Bewertung:
Danke für Ihr Feedback! Sie helfen uns, besser zu werden.
Danke für Ihr Feedback! Sie helfen uns, besser zu werden.