Vytvoření souboru keytab

Pro ověření ve všech uzlech clusteru můžete použít stejný uživatelský účet. Za tímto účelem musíte pro každý uzel vytvořit soubor keytab obsahující hlavní název služby (dále také označován jako „SPN“). Při vytváření souboru keytab budete muset použít atribut pro generování náhodného řetězce salt (upravuje vstup hashovací funkce).

Chcete-li následně přidat nová SPN do souboru tabulky klíčů, vygenerovaný řetězec salt je třeba uložit metodou, kterou si vyberete.

Můžete také vytvořit samostatný uživatelský účet služby Active Directory pro každý uzel clusteru, který vyžaduje konfiguraci ověřování protokolem Kerberos.

Než vytvoříte soubor keytab

Před vytvořením souboru keytab pro každý SPN se ujistěte, že není registrován ve službě Active Directory. To provedete spuštěním následujícího příkazu: setspn -Q <SPN>, kde <SPN> má následující strukturu: HTTP/<plně kvalifikovaný název domény (FQDN) uzlu clusteru>.

Příkaz by měl vrátit No such SPN found, což znamená, že příslušný SPN není zaregistrován. Pokud již SPN byl zaregistrován, před vytvořením souboru keytab musíte zrušit přiřazení hlavního názvu služby k účtu nebo odstranit samotný účet ve službě Active Directory, ke kterému byl tento SPN přiřazen.

Příklad kontroly SPN u jednoho řídicího uzlu a dvou sekundárních uzlů:

setspn -Q HTTP/control-01.test.local

setspn -Q HTTP/secondary-01.test.local

setspn -Q HTTP/secondary-02.test.local

Vytvoření souboru keytab

Soubor keytab je vytvořen na serveru řadiče domény nebo v počítači se systémem Windows Server, který je součástí domény, pod účtem správce domény.

Postup vytvoření souboru keytab pomocí jednoho uživatelského účtu:

  1. V modulu snap-in Uživatelé a počítače služby Active Directory vytvořte uživatelský účet (nazvaný například control-user).
  2. Pokud chcete používat šifrovací algoritmus AES256-SHA1, v modulu snap-in Uživatelé a počítače služby Active Directory proveďte tyto kroky:
    1. Otevřete vlastnosti vytvořeného účtu.
    2. Na kartě Účet zaškrtněte políčko Tento účet podporuje 256bitové šifrování algoritmem AES pro protokol Kerberos.
  3. Pomocí nástroje ktpass vytvořte soubor keytab pro uživatele control-user. To provedete zadáním následujícího příkazu v příkazovém řádku:

    C:\Windows\system32\ktpass.exe -princ HTTP/<úplný název domény (FQDN) řídicího uzlu>@<název sféry domény Active Directory velkými písmeny> -mapuser control-user@<název sféry domény Active Directory velkými písmeny> -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * +dumpsalt -out <cesta k souboru>\<název souboru>.keytab

    Nástroj vás při spuštění příkazu vyzve k zadání hesla uživatele control-user.

    Do vytvořeného souboru keytab bude přidáno SPN uzlu s rolí Řídicí. Zobrazí se vygenerovaný řetězec salt: Hashovací heslo s řetězcem salt "<hodnota hash>".

  4. U každého uzlu clusteru přidejte do souboru keytab položku SPN. To provedete následujícím příkazem:

    C:\Windows\system32\ktpass.exe -princ HTTP/<úplný název domény (FQDN) uzlu>@<název domény Active Directory sféry velkými písmeny> -mapuser control-user@<název domény Active Directory sféry velkými písmeny > -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * +dumpsalt -out <cesta k dříve vytvořenému souboru a jeho název>.keytab -out <cesta a nový název>.keytab - setupn -setpass -rawsalt "<hodnota hash náhodného řetězce získaná při vytváření souboru keytab v kroku 3>"

    Nástroj vás při spuštění příkazu vyzve k zadání hesla uživatele control-user.

Bude vytvořen soubor keytab. Tento soubor bude obsahovat všechny přidané SPN uzlů clusteru.

Příklad:

Potřebujete například vytvořit soubor keytab obsahující SPN 3 uzlů: control-01.test.local, secondary -01.test.localsecondary-02.test.local.

Pokud chcete vytvořit soubor s názvem filename1.keytab obsahující SPN řídicího uzlu ve složce C:\keytabs\, musíte spustit následující příkaz:

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

Předpokládejme, že máte náhodný řetězec "TEST.LOCALHTTPcontrol-01.test.local".

Pokud chcete přidat třetí SPN, musíte spustit následující příkaz:

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"

Pokud chcete přidat třetí SPN, musíte spustit následující příkaz:

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"

Výsledkem bude vytvoření souboru s názvem filename3.keytab obsahující všechny tři přidané SPN.

Postup vytvoření souboru keytab pomocí samostatného uživatelského účtu pro každý uzel:

  1. V modulu snap-in Uživatelé a počítače služby Active Directory vytvořte samostatný uživatelský účet pro každý uzel clusteru (například uživatelské účty s názvem control-user, secondary1-user, secondary2-user atd.).
  2. Pokud chcete používat šifrovací algoritmus AES256-SHA1, v modulu snap-in Uživatelé a počítače služby Active Directory proveďte tyto kroky:
    1. Otevřete vlastnosti vytvořeného účtu.
    2. Na kartě Účet zaškrtněte políčko Tento účet podporuje 256bitové šifrování algoritmem AES pro protokol Kerberos.
  3. Pomocí nástroje ktpass vytvořte soubor keytab pro uživatele control-user. To provedete zadáním následujícího příkazu v příkazovém řádku:

    C:\Windows\system32\ktpass.exe -princ HTTP/<úplný název domény (FQDN) řídicího uzlu>@<název sféry domény Active Directory velkými písmeny> -mapuser control-user@<název sféry domény Active Directory velkými písmeny> -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -out <cesta k souboru>\<název souboru>.keytab

    Nástroj vás při spuštění příkazu vyzve k zadání hesla uživatele control-user.

    Do vytvořeného souboru keytab se přidá SPN řídicího uzlu.

  4. U každého uzlu clusteru přidejte do souboru keytab položku SPN. To provedete následujícím příkazem:

    C:\Windows\system32\ktpass.exe -princ HTTP/<úplný název domény (FQDN) uzlu>@<název domény Active Directory sféry velkými písmeny> -mapuser secondary1-user@<název domény Active Directory sféry velkými písmeny > -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -in <cesta k dříve vytvořenému souboru a jeho název>.keytab -out <cesta a nový název>.keytab

    Nástroj vás při spuštění příkazu vyzve k zadání hesla uživatele secondary1-user.

Bude vytvořen soubor keytab. Tento soubor bude obsahovat všechny přidané SPN uzlů clusteru.

Příklad:

Potřebujete například vytvořit soubor keytab obsahující SPN 3 uzlů: control-01.test.local, secondary -01.test.localsecondary-02.test.local.

Pokud chcete vytvořit soubor s názvem filename1.keytab obsahující SPN řídicího uzlu ve složce C:\keytabs\, musíte spustit následující příkaz:

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

Chcete-li přidat třetí SPN, zadejte následující příkaz:

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

Chcete-li přidat třetí SPN, zadejte následující příkaz:

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

Výsledkem bude vytvoření souboru s názvem filename3.keytab obsahující všechny tři přidané SPN.

Po vytvoření souboru keytab

Po vytvoření souboru keytab pro každý SPN se ujistěte, že je zaregistrován a přiřazen k příslušnému účtu. To provedete spuštěním následujícího příkazu: setspn -Q <SPN>, kde <SPN> má následující strukturu: HTTP/<plně kvalifikovaný název domény (FQDN) uzlu clusteru>.

Příkaz musí vrátit Existing SPN found a účet, ke kterému je SPN přiřazen.

Po vytvoření souboru keytab můžete navíc zkontrolovat seznam názvů SPN přiřazených k příslušnému účtu. To lze provést pomocí následujícího příkazu: setspn -L <uživatelské jméno>.

Pokud byl soubor keytab vytvořen pomocí jednoho účtu, měl by příkaz vrátit seznam všech SPN, pro které byl soubor keytab vytvořen. Pokud byl soubor keytab vytvořen se samostatnými účty pro každý uzel, měl by příkaz vrátit jeden SPN, který je přiřazen ke konkrétnímu účtu.

Příklad příkazu pro jeden účet:

setspn -L control-user

Příklad příkazu pro samostatné účty u jednotlivých uzlů:

setspn -L control-user

setspn -L secondary1-user

setspn -L secondary2-user

Na začátek stránky