Udostępnij za pośrednictwem


ktpass

Konfiguruje główną nazwę serwera dla hosta lub usługi w usługach Active Directory Domain Services (AD DS) i generuje plik .keytab zawierający wspólny klucz tajny usługi. Plik .keytab jest oparty na implementacji protokołu uwierzytelniania Kerberos w Massachusetts Institute of Technology (MIT). Narzędzie wiersza polecenia ktpass umożliwia usługom innych niż Windows, które obsługują uwierzytelnianie Kerberos w celu korzystania z funkcji współdziałania udostępnianych przez usługę Centrum dystrybucji kluczy Kerberos (KDC).

Składnia

ktpass
[/out <filename>]
[/princ <principalname>]
[/mapuser <useraccount>]
[/mapop {add|set}] [{-|+}desonly] [/in <filename>]
[/pass {password|*|{-|+}rndpass}]
[/minpass]
[/maxpass]
[/crypto {DES-CBC-CRC|DES-CBC-MD5|RC4-HMAC-NT|AES256-SHA1|AES128-SHA1|All}]
[/itercount]
[/ptype {KRB5_NT_PRINCIPAL|KRB5_NT_SRV_INST|KRB5_NT_SRV_HST}]
[/kvno <keyversionnum>]
[/answer {-|+}]
[/target]
[/rawsalt] [{-|+}dumpsalt] [{-|+}setupn] [{-|+}setpass <password>]  [/?|/h|/help]

Parametry

Parametr Opis
/out <filename> Określa nazwę pliku keytab protokołu Kerberos w wersji 5 do wygenerowania. Uwaga: Jest to plik keytab, który jest przenoszony na komputer, na którym nie jest uruchomiony system operacyjny Windows, a następnie zastąp plik .keytab lub scal go z istniejącym plikiem .keytab, /Etc/Krb5.keytab.
/princ <principalname> Określa nazwę główną w hoście formularza/computer.contoso.com@CONTOSO.COM. Ostrzeżenie: Ten parametr uwzględnia wielkość liter.
/mapuser <useraccount> Mapuje nazwę podmiotu zabezpieczeń Protokołu Kerberos określonego przez parametr princ do określonego konta domeny.
/mapop {add|set} Określa sposób ustawiania atrybutu mapowania.
  • Dodaj — dodaje wartość określonej nazwy użytkownika lokalnego. Jest to wartość domyślna.
  • Ustaw — ustawia wartość szyfrowania danych w warstwie Standardowa (DES) tylko dla określonej nazwy użytkownika lokalnego.
{-|+}desonly Szyfrowanie TYLKO DES jest domyślnie ustawione.
  • + Ustawia konto tylko do szyfrowania DES.
  • - Zwalnia ograniczenie dotyczące konta tylko do szyfrowania DES. Ważne: system Windows domyślnie nie obsługuje des.
/in <filename> Określa plik .keytab do odczytu z komputera hosta, który nie korzysta z systemu operacyjnego Windows.
/pass {password|*|{-|+}rndpass} Określa hasło dla głównej nazwy użytkownika określonej przez parametr princ. Użyj *, aby wyświetlić monit o podanie hasła.
/minpass Ustawia minimalną długość losowego hasła na 15 znaków.
/maxpass Ustawia maksymalną długość losowego hasła na 256 znaków.
/crypto {DES-CBC-CRC|DES-CBC-MD5|RC4-HMAC-NT|AES256-SHA1|AES128-SHA1|All} Określa klucze, które są generowane w pliku keytab:
  • DES-CBC-CRC — służy do zapewnienia zgodności.
  • DES-CBC-MD5 — ściślej przestrzega implementacji MIT i jest używany do zapewnienia zgodności.
  • RC4-HMAC-NT — wykorzystuje szyfrowanie 128-bitowe.
  • AES256-SHA1 — wykorzystuje szyfrowanie AES256-CTS-HMAC-SHA1-96.
  • AES128-SHA1 — wykorzystuje szyfrowanie AES128-CTS-HMAC-SHA1-96.
  • Wszystkie — można użyć wszystkich obsługiwanych typów kryptograficznych.

Uwaga: Ponieważ ustawienia domyślne są oparte na starszych wersjach MIT, zawsze należy użyć parametru /crypto.

/itercount Określa liczbę iteracji, która jest używana do szyfrowania AES. Wartość domyślna ignoruje itercount dla szyfrowania innego niż AES i ustawia szyfrowanie AES na 4096.
/ptype {KRB5_NT_PRINCIPAL|KRB5_NT_SRV_INST|KRB5_NT_SRV_HST} Określa typ podmiotu zabezpieczeń.
  • KRB5_NT_PRINCIPAL — ogólny typ podmiotu zabezpieczeń (zalecane).
  • KRB5_NT_SRV_INST — wystąpienie usługi użytkownika
  • KRB5_NT_SRV_HST — wystąpienie usługi hosta
/kvno <keyversionnum> Określa numer wersji klucza. Wartość domyślna to 1.
/answer {-|+} Ustawia tryb odpowiedzi w tle:
  • - Odpowiedzi resetuj hasła automatycznie z NO.
  • + odpowiedzi automatycznie resetuje monity o hasło przy użyciu TAK.
/cel Ustawia kontroler domeny do użycia. Wartością domyślną jest wykrycie kontrolera domeny na podstawie głównej nazwy. Jeśli nazwa kontrolera domeny nie zostanie rozpoznana, zostanie wyświetlone okno dialogowe z monitem o prawidłowy kontroler domeny.
/rawsalt wymusza użycie algorytmu rawsalt podczas generowania klucza przez moduł ktpass. Ten parametr jest opcjonalny.
{-|+}dumpsalt Dane wyjściowe tego parametru pokazują algorytm soli MIT, który jest używany do generowania klucza.
{-|+}setupn Ustawia główną nazwę użytkownika (UPN) oprócz nazwy głównej usługi (SPN). Wartością domyślną jest ustawienie obu w pliku .keytab.
{-|+}setpass <password> Ustawia hasło użytkownika po podaniu. Jeśli jest używany rndpass, zamiast tego jest generowane losowe hasło.
/? Wyświetla Pomoc dla tego polecenia.

Uwagi

  • Usługi działające w systemach, które nie działają w systemie operacyjnym Windows, można skonfigurować przy użyciu kont wystąpień usług w usługach AD DS. Dzięki temu każdy klient protokołu Kerberos może uwierzytelniać się w usługach, które nie korzystają z systemu operacyjnego Windows przy użyciu kontrolerów KDC systemu Windows.

  • Parametr /princ nie jest oceniany przez ktpass i jest używany jako podany. Nie ma sprawdzania, czy parametr jest zgodny z dokładnym przypadkiem userPrincipalName wartości atrybutu podczas generowania pliku Keytab. Dystrybucje Kerberos z uwzględnieniem wielkości liter przy użyciu tego pliku tab klucza mogą mieć problemy, jeśli nie ma dokładnego dopasowania wielkości liter, a nawet może zakończyć się niepowodzeniem podczas wstępnego uwierzytelniania. Aby sprawdzić i pobrać poprawną userPrincipalName wartość atrybutu z pliku eksportu LDifDE. Na przykład:

    ldifde /f keytab_user.ldf /d CN=Keytab User,OU=UserAccounts,DC=contoso,DC=corp,DC=microsoft,DC=com /p base /l samaccountname,userprincipalname
    

Przykłady

Aby utworzyć plik keytab protokołu Kerberos dla komputera hosta, który nie korzysta z systemu operacyjnego Windows, musisz zamapować podmiot zabezpieczeń na konto i ustawić hasło jednostki hosta.

  1. Użyj usługi Active Directory Użytkownik i komputery przystawki, aby utworzyć konto użytkownika dla usługi na komputerze, na którym nie jest uruchomiony system operacyjny Windows. Na przykład utwórz konto o nazwie User1.

  2. Użyj polecenia ktpass, aby skonfigurować mapowanie tożsamości dla konta użytkownika, wpisując:

    ktpass /princ host/User1.contoso.com@CONTOSO.COM /mapuser User1 /pass MyPas$w0rd /out machine.keytab /crypto all /ptype KRB5_NT_PRINCIPAL /mapop set
    

    Uwaga

    Nie można mapować wielu wystąpień usługi na to samo konto użytkownika.

  3. Scal plik .keytab z plikiem /Etc/Krb5.keytab na komputerze hosta, na którym nie jest uruchomiony system operacyjny Windows.