kdm и ssh обнаруживают разные полные доменные имена при использовании аутентификации kerberos

Я пытаюсь настроить поддержку входа в Kerberos (домен Windows AD, предоставляющий kerberos) для рабочих станций Kubuntu 12.04 Linux в компании, в которой я работаю.

Это почти полностью работает, но я не могу заставить Kerberos работать одновременно как для входа в систему (через kdm), так и для ssh. Кажется, проблема в том, что kdm обнаруживает полностью определенный домен хоста как hostname.domain. и ssh обнаруживает полностью определенный домен как hostname.domain (обратите внимание на отсутствие запаздывания.)

Это отсутствие или присутствие. в конце домена, который используется в запросах Kerberos, достаточно, чтобы запрос на билет не прошел с ошибкой "Сервер не найден в базе данных Kerberos". Если я обновлю /etc/hosts, чтобы иметь полное имя хоста в качестве hostname.domain. и присоединиться к домену, используя samba kdm, используя Kerberos, но работа ssh не выполняется. Если я обновлю /etc/hosts, чтобы в качестве hostname указывался hostname.domain, то вход в систему по ssh с использованием kerberos работал, но вход в систему kdm не удался.

Я немного растерялся из-за того, что эти две службы по-разному определяют полное доменное имя - я провел обширные поиски и не нашел никаких ссылок на кого-либо еще, имеющего эту проблему, или каких-либо вариантов принудительного использования одной из этих служб. по-разному определять их доменные имена.

Технические детали

Использование Kubuntu 12.04 является техническим требованием вне моего контроля, поэтому переход на более позднюю версию дистрибутива на данном этапе невозможен.

pam_krb5 используется для обеспечения аутентификации kerberos через pam dns, который используется не windows dns (не может переключать dns-серверы, пока не будет завершена дальнейшая работа в другом инфраструктуре), поэтому основные детали, используемые для соединения Kerberosied samba с доменом, приведены из /etc/hosts, который выглядит примерно так

127.0.0.1 hostname.domain.  hostname  localhost

(Используемый сервер Unix DNS, хотя и имеет правильные записи прямого и обратного DNS для хостов, хотя)

/etc/krb5.conf (который в основном является дистрибутивом по умолчанию с указанием сведений о домене и серверов)

[libdefaults]
default_realm = DOMAIN
krb4_config = /etc/krb.conf
krb4_realms = /etc/krb.realms
kdc_timesync = 1
ccache_type = 4
forwardable = true
proxiable = true
# samba 3 didn't like the default enc type so overridden to ones it supported
default_tkt_enctypes = arcfour-hmac-md5 des3-hmac-sha1 des-cbc-crc
default_tgs_enctypes = arcfour-hmac-md5 des3-hmac-sha1 des-cbc-crc

[realms]
DOMAIN = {
kdc = dc01.domain
kdc = dc02.domain
admin_server = dc01.domain
}
[domain_realm]
.domain = DOMAIN

[login]
krb4_convert = true
krb4_get_tickets = false

/etc/samba/smb.conf (используется только для присоединения к домену)

[global]
security = ads
realm = WETAFX.CO.NZ
workgroup = WETAFX.CO.NZ

kerberos method = secrets and keytab

client signing = yes
client use spnego = yes

server string = %h server (Samba, Ubuntu)
dns proxy = no
log file = /var/log/samba/log.%m

max log size = 1000

syslog = 0

panic action = /usr/share/samba/panic-action %d

Мудрый pam /etc/pam.d/kdm включает в себя файлы общего pam, которые имеют стандартные записи pam_krb5.so, такие как

auth sufficient pam_krb5.so minimum_uid=1000

которые в основном взяты из страниц руководства для pam_krb5.conf

Конфигурация SSH имеет

 GSSAPIAuthentication yes

а остальное - стандартный файл конфигурации ubuntu ssh по умолчанию.

Спасибо за любые указания относительно того, что вызывает это несоответствие в обнаруженном полностью определенном домене между службами.

1 ответ

Решение

Я считаю, что я понял, что здесь происходит. Похоже, что дополнительная информация хранится в файле keytab после соединения хоста с / без. на конце домена, и это было то, откуда происходило странное поведение.

После того как я удалил /etc/krb5.keytab и повторно подключился к домену, который создал новую таблицу ключей, которая когда-либо была настроена только с именем домена, настроенным без. в конце этого. В этот момент и kdm, и ssh правильно работали с kerberos.

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