LINUX.ORG.RU
ФорумAdmin

kerberos - тикет не авторизуется

 ,


0

1

Добрый день.

Есть задача настроить авторизацию одного ПО с помощью kerberos.

Для этого:

  • На целевом сервере прописываются внутренние ДНС сервера организации.
  • На целевом сервере настраивается точное время с помощью NTP
  • На целевом сервере прописывается имя сервера sdtest.tb.kz
  • На домен контроллере создается пользователь sdtest, с неограниченным сроком действия пароля.
  • На внутренних ДНС серверах организации создаются A записи для сервера sdtest.tb.kz
  • На домен контроллере создается тикет для авторизации сервера sdtest.tb.kz в АД с помощью kerberos

    ktpass -princ HTTP/sdtest.tb.kz@TB.KZ -mapuser sdtest@TB.KZ -crypto rc4-hmac-nt -pass “пароль пользователя sdtest” -ptype KRB5_NT_PRINCIPAL -out c:/sdtest.tb.kz.keytab

  • Тикет копируется на целевой сервер
  • На целевом сервере я пытаюсь проверить работоспособность тикета с помощью команды kinit и получаю ошибку

    kinit -V -k -t /root/sdtest.tb.kz.keytab HTTP/sdtest.tb.kz
    Using default cache: /tmp/krb5cc_0
    Using principal: HTTP/sdtest.tb.kz@TB.KZ
    Using keytab: /root/sdtest.tb.kz.keytab
    kinit: Keytab contains no suitable keys for HTTP/sdtest.tb.kz@TB.KZ while getting initial credentials

файл /etc/krb5.conf

[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log

[libdefaults]
default_realm = TB.KZ
dns_lookup_realm = true
dns_lookup_kdc = true
kdc_timesync = 1
ticket_lifetime = 24h
forwardable = true
proxiable = true
renew_lifetime = 7d
default_keytab_name = /root/sdtest.tb.kz.keytab
default_tgs_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
default_tkt_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
permitted_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5

[realms]
TB.KZ = {
kdc = dc05.tb.kz
kdc = dc06.tb.kz
admin_server = dc05.tb.kz
}

[domain_realm]
.tb.kz = TB.KZ
tb.kz = TB.KZ

Что я или админ домен контроллера делаем не так? Может быть что то упустили?


Данную ошибку решили.

Оказалось, что админ ДК не верно вводил команду для создания тикета.

ktpass -princ HTTP/sdtest.tb.kz@tb.kz -mapuser sdtest@tb.kz -crypto rc4-hmac-nt -pass “пароль пользователя sdtest” -ptype KRB5_NT_PRINCIPAL -out c:/sdtest.tb.kz.keytab

вместо

ktpass -princ HTTP/sdtest.tb.kz@TB.KZ -mapuser sdtest@TB.KZ -crypto rc4-hmac-nt -pass “пароль пользователя sdtest” -ptype KRB5_NT_PRINCIPAL -out c:/sdtest.tb.kz.keytab

Теперь, создали новый тикет sdtest1.tb.kz.keytab , но появилась другая проблема:

kinit -V -k -t /root/sdtest1.tb.kz.keytab HTTP/sdtest.tb.kz
Using default cache: /tmp/krb5cc_0
Using principal: HTTP/sdtest.tb.kz@TB.KZ
Using keytab: /root/sdtest1.tb.kz.keytab
kinit: Client not found in Kerberos database while getting initial credentials

djeg
() автор топика
Ответ на: комментарий от blind_oracle

И вообще для керберосной аутентификации используются сервисы разные, например для ssh это HOST а не HTTP

no-dashi ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.