Выгрузка keytab

Keytab-файлы содержат пары субъектов безопасности Kerberos и зашифрованных ключей, полученных с использованием пароля Kerberos.

Например, эти файлы используются сервисами для аутентификации в службе каталогов по протоколу Kerberos без ввода пароля.

Как правило, для сервиса, который будет использовать keytab-файл, создается отдельная учетная запись пользователя службы каталогов, к которой привязывается уникальное имя экземпляра сервиса — SPN (см. подробнее в разделе «Администрирование SPN»). В процессе аутентификации Kerberos использует SPN для сопоставления экземпляра сервиса с учетной записью в службе каталогов.

Для выгрузки доменных ключей Kerberos в keytab-файл используется следующий формат вызова:

samba-tool domain exportkeytab --principal=[<sAMAccount name> | <SPN>] <name>.keytab [options]

При вызове команды указываются:

  • sAMAccountName или SPN субъект безопасности;

  • путь и имя для создания keytab-файла.

По умолчанию keytab-файл содержит ограниченный список алгоритмов шифрования (enctypes). Для добавления дополнительных алгоритмов используйте команду net ads enctypes set.

Параметры

Параметры вызова:

  • --principal=[<sAMAccountName> | <SPN>] — субъект безопасности, для которого требуется выгрузить данные.

Пример

Пример последовательности шагов с выгрузкой keytab-файла для дальнейшего использования с целью аутентификации сервиса:

  1. Создание учетной записи для сервиса:

    samba-tool user add service-name
  2. Отключение ограничения на период действия пароля:

    samba-tool user setexpiry service-name --noexpiry
  3. При необходимости добавление учетной записи в группу с определенными правами:

    samba-tool group addmembers ServiceAdminsGroup service-name
  4. Привязка SPN:

    samba-tool spn add service-class/service-host.samdom.example.com@SAMDOM.EXAMPLE.COM service-name
  5. Выгрузка keytab-файла:

    samba-tool domain exportkeytab --principal=service-name@SAMDOM.EXAMPLE.COM /path/to/file/file-name.keytab