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.
|
{-|+} desonly |
Szyfrowanie TYLKO DES jest domyślnie ustawione.
|
/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:
Uwaga: Ponieważ ustawienia domyślne są oparte na starszych wersjach MIT, zawsze należy użyć parametru |
/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ń.
|
/kvno <keyversionnum> |
Określa numer wersji klucza. Wartość domyślna to 1. |
/answer {-|+} |
Ustawia tryb odpowiedzi w tle:
|
/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.
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.
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.
Scal plik .keytab z plikiem /Etc/Krb5.keytab na komputerze hosta, na którym nie jest uruchomiony system operacyjny Windows.