ktpass
Область применения: Windows Server 2022, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2, Windows Server 2012
Настраивает имя субъекта-сервера для узла или службы в доменные службы Active Directory (AD DS) и создает keytab-файл, содержащий общий секретный ключ службы. Файл KEYTAB основан на реализации протокола проверки подлинности Kerberos в Массачусетском технологическом институте (MIT). Программа командной строки ktpass позволяет службам, не Windows, поддерживающим проверку подлинности Kerberos, использовать функции взаимодействия, предоставляемые службой Центра распространения ключей Kerberos (KDC).
Синтаксис
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]
Параметры
| Параметр | Описание |
|---|---|
/out <filename> |
Указывает имя создаваемого файла Kerberos версии 5 .keytab. Примечание: Это keytab-файл, который вы передаете на компьютер, который не работает под управлением Windows операционной системы, а затем замените или объедините его с существующим файлом KEYTAB /Etc/Krb5.keytab. |
/princ <principalname> |
Указывает имя участника в узле формы/computer.contoso.com@CONTOSO.COM. Предупреждение: Этот параметр учитывает регистр. |
/mapuser <useraccount> |
Карты имя субъекта Kerberos, указанного параметром princ, в указанную учетную запись домена. |
/mapop {add|set} |
Указывает, как задается атрибут сопоставления.
|
{-|+}десонно |
Шифрование только des задается по умолчанию.
|
/in <filename> |
Указывает файл KEYTAB для чтения с главного компьютера, на котором не выполняется операционная система Windows. |
/pass {password|*|{-|+}rndpass} |
Задает пароль для имени основного пользователя, указанного параметром princ . Используется * для запроса пароля. |
| /minpass | Задает минимальную длину случайного пароля 15 символов. |
| /maxpass | Задает максимальную длину случайного пароля 256 символов. |
/crypto {DES-CBC-CRC|DES-CBC-MD5|RC4-HMAC-NT|AES256-SHA1|AES128-SHA1|All} |
Указывает ключи, созданные в файле keytab:
Примечание: Так как параметры по умолчанию основаны на старых версиях MIT, всегда следует использовать |
| /itercount | Указывает число итераций, используемое для шифрования AES. Значение по умолчанию игнорирует итерсчет для шифрования, отличного от AES, и устанавливает для шифрования AES значение 4096. |
/ptype {KRB5_NT_PRINCIPAL|KRB5_NT_SRV_INST|KRB5_NT_SRV_HST} |
Указывает тип субъекта.
|
/kvno <keyversionnum> |
Указывает номер версии ключа. Значение по умолчанию — 1. |
/answer {-|+} |
Задает режим фонового ответа:
|
| /target | Задает используемый контроллер домена. По умолчанию определяется контроллер домена на основе имени участника. Если имя контроллера домена не разрешается, в диалоговом окне появится запрос на ввод допустимого контроллера домена. |
| /rawsalt | заставляет ktpass использовать алгоритм rawsalt при создании ключа. Этот параметр является необязательным. |
{-|+}dumpsalt |
В выходных данных этого параметра показан алгоритм соли MIT, используемый для создания ключа. |
{-|+}setupn |
Задает имя участника-пользователя (UPN) в дополнение к имени субъекта-службы (SPN). Значение по умолчанию — задать оба значения в файле KEYTAB. |
{-|+}setpass <password> |
Задает пароль пользователя при указании. Если используется rndpass, создается случайный пароль. |
| /? | Отображает справку для этой команды. |
Комментарии
Службы, работающие в системах, не работающих под управлением операционной системы Windows, можно настроить с помощью учетных записей экземпляров служб в AD DS. Это позволяет любому клиенту Kerberos проходить проверку подлинности в службах, не работающих под управлением операционной системы Windows, с помощью Windows KDCs.
Параметр /princ не вычисляется с помощью ktpass и используется в качестве предоставленного. Нет проверки, соответствует ли параметр точному регистру значения атрибута userPrincipalName при создании файла Keytab. В дистрибутивах Kerberos с учетом регистра, использующих этот файл Keytab, могут возникнуть проблемы при отсутствии точного соответствия регистра и даже может завершиться сбоем во время предварительной проверки подлинности. Чтобы проверить и получить правильное значение атрибута userPrincipalName из файла экспорта LDifDE. Пример:
ldifde /f keytab_user.ldf /d CN=Keytab User,OU=UserAccounts,DC=contoso,DC=corp,DC=microsoft,DC=com /p base /l samaccountname,userprincipalname
Примеры
Чтобы создать файл Kerberos .keytab для главного компьютера, на котором не запущена операционная система Windows, необходимо сопоставить субъект с учетной записью и задать пароль участника узла.
Используйте оснастку "Пользователь и компьютеры Active Directory", чтобы создать учетную запись пользователя для службы на компьютере, на котором не запущена операционная система Windows. Например, создайте учетную запись с именем User1.
Используйте команду ktpass , чтобы настроить сопоставление удостоверений для учетной записи пользователя, введя следующую команду:
ktpass /princ host/User1.contoso.com@CONTOSO.COM /mapuser User1 /pass MyPas$w0rd /out machine.keytab /crypto all /ptype KRB5_NT_PRINCIPAL /mapop setПримечание
Невозможно сопоставить несколько экземпляров служб с одной учетной записью пользователя.
Объедините файл KEYTAB с файлом /Etc/Krb5.keytab на главном компьютере, на котором не запущена операционная система Windows.