Keytab-Datei für den Squid-Dienst erstellen

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.

So erstellen Sie eine keytab-Datei für den Squid-Dienst mithilfe eines Benutzerkontos:

  1. Erstellen Sie im Snap-In Active Directory Users and Computers ein Benutzerkonto mit dem Namen squid-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 squid-user mithilfe des Dienstprogramms ktpass. Führen Sie dazu in der Befehlszeile den folgenden Befehl aus:

    C:\Windows\system32\ktpass.exe -princ HTTP/<Name des Servers mit dem Squid-Dienst>@<realm Active Directory-Domänenname in Großbuchstaben> -mapuser squid-user@<realm Active Directory-Domänenname in Großbuchstaben> -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * +dumpsalt -out <Dateipfad>\<Dateiname>.keytab

    Der Name des Servers mit dem Squid-Dienst muss in Kleinbuchstaben angegeben werden (z. B. proxy.company.com).

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

    In der erstellten keytab-Datei wird der SPN-Eintrag 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 squid-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 squid-user ab.

Die keytab-Datei für den Squid-Dienst 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 squid-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 squid-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 squid-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.

So erstellen Sie eine keytab-Datei für den Squid-Dienst mithilfe eines separaten Benutzerkontos für jeden Knoten:

  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 squid-user, squid-user2, squid-user3 usw.).
  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 squid-user mithilfe des Dienstprogramms ktpass. Führen Sie dazu in der Befehlszeile den folgenden Befehl aus:

    C:\Windows\system32\ktpass.exe -princ HTTP/<Name des Servers mit dem Squid-Dienst in Kleinbuchstaben>@<realm Name der Active Directory Domäne in Großbuchstaben> -mapuser squid-user@<realm Name der Active Directory Domäne in Großbuchstaben> -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -out <Dateipfad>\<Dateiname>.keytab

    Der Name des Servers mit dem Squid-Dienst muss in Kleinbuchstaben angegeben werden (z. B. proxy.company.com).

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

    In der erstellten keytab-Datei wird der SPN-Eintrag 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 squid-user2@<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 squid-user2 ab.

Die keytab-Datei für den Squid-Dienst 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 squid-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 squid-user2@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 squid-user3@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.

Nach oben