Клиент Kerberos не найден в базе данных Kerberos

Я выполняю следующие команды на сервере W12:-

setspn -A HTTP / krbspn

ktpass / princ HTTP / @ / crypto ALL / ptype krb5_nt_principal / mapuser krbspn c: \ ticket \ krbspn.keytab -kvno 0 / pass Pa $$ w0rd

и kinit krbspn дает правильный результат, однако kinit HTTP/ возвращает:-

KrbException: клиент не найден в базе данных Kerberos (6) по адресу sun.security.krb5.KrbAsRep.(KrbAsRep.java:76) по адресу sun.security.krb5.KrbAsReqBuilder.send(KrbAsReqBuilder.java:319) по адресу sun.security.krb5.KrbAsReqBuilder.action(KrbAsReqBuilder.java:364) в sun.security.krb5.internal.tools.Kinit.(Kinit.java:221) в sun.security.krb5.internal.tools.Kinit.main(Kinit.java:113) Вызвано: KrbException: идентификатор не соответствует ожидаемому значению (906) в sun.security.krb5.internal.KDCRep.init(KDCRep.java:143) в sun.security.krb5.internal.ASRep.init(ASRep).java:65) на sun.security.krb5.internal.ASRep.(ASRep.java:60) на sun.security.krb5.KrbAsRep.(KrbAsRep.java:60) ... еще 4

Я все готово проверил с прямой и обратной DNS, и они работают нормально.

Интересный факт:-

Я использовал эти точные команды с тем же именем SPN на той же машине, и все работало отлично в течение нескольких месяцев. Но 2 дня назад просто для демонстрации я сделал:

setspn -D HTTP/ krbspn

а затем снова выполнили вышеуказанные команды, и теперь это сломано:-(

Любая помощь приветствуется..

Спасибо, Нихил

1 ответ

Решение
  1. setspn -A HTTP/ krbspn имеет пробел после / и до krbspn. Там не должно быть никакого разрыва там.
  2. В HTTP/@ /crypto ALL ktpass / princ должно быть какое-то имя хоста, указанное после HTTP / и перед @, предпочтительно полное DNS-имя.
  3. kinit HTTP / сам по себе всегда завершится неудачей, поскольку аргумент SPN является неполным, вы должны иметь какое-то имя хоста после HTTP /, иначе поиск в KDC ничего не найдет.

Для примера того, как выполнить команду ktpass, обратитесь к этой ссылке: Kerberos Keytabs - Explained. Пример команды ktpass внизу статьи. Если вы будете следовать этому, SPN и Keytab будут правильно собраны, и если вы все правильно выполните, аутентификация Kerberos будет успешной.

Другие вопросы по тегам