Назад | Перейти на главную страницу

Должен ли domain_realm указывать на контроллер домена или KDC, или это просто имя default_realm?

В /etc/krb5.conf, учитывая следующие default_realm, должен [realms].default_domain указать на default_realm или контроллер домена (DC) или центр распределения ключей (KDC)?

ada и adb - это контроллеры домена и KDC Windows Server. Члены домена - это системы, на которых запущены поддерживаемые выпуски Ubuntu Server, присоединенные как члены домена через Samba и Winbind.

Контроллеры домена обеспечивают аутентификацию для входа в систему через ssh и доступа к общим ресурсам SMB, которые находятся на серверах Ubuntu. Это используется для управления тем, какие пользователи и группы домена могут или могут получить доступ на различных серверах Ubuntu.

Пример 1:

[libdefaults]
ticket_lifetime = 24h
default_realm = DEPT.EXMAMPLE.COM
default_tgs_entypes = rc4-hmac des-cbc-md5
default_tkt__enctypes = rc4-hmac des-cbc-md5
permitted_enctypes = rc4-hmac des-cbc-md5
dns_lookup_realm = false
dns_lookup_kdc = true
dns_fallback = yes

[realms]
DEPT.EXMAMPLE.COM = {
  kdc = ada.dept.example.com
  kdc = adb.dept.example.com
  admin_server = ada.dept.example.com
  master_kdc = ada.dept.example.com
  default_domain = dept.example.com
}

[domain_realm]
.dept.example.com = DEPT.EXMAMPLE.COM
dept.example.com = DEPT.EXMAMPLE.COM

Ex2

[libdefaults]
ticket_lifetime = 24h
default_realm = DEPT.EXMAMPLE.COM
default_tgs_entypes = rc4-hmac des-cbc-md5
default_tkt__enctypes = rc4-hmac des-cbc-md5
permitted_enctypes = rc4-hmac des-cbc-md5
dns_lookup_realm = false
dns_lookup_kdc = true
dns_fallback = yes

[realms]
DEPT.EXMAMPLE.COM = {
  kdc = ada.dept.example.com
  kdc = adb.dept.example.com
  admin_server = ada.dept.example.com
  master_kdc = ada.dept.example.com
  default_domain = dept.example.com
}

[domain_realm]
.dept.example.com = ADA.DEPT.EXMAMPLE.COM
dept.example.com = ADA.DEPT.EXMAMPLE.COM

Обе конфигурации, похоже, работают на нескольких серверах Ubuntu, но я не понимаю, почему и что правильно.

Ваш ex1 правильный, ex2 недействительный.

Со страницы руководства:

[царства]
Содержит подразделы с ключами по именам областей Kerberos, которые описывают, где найти серверы Kerberos для конкретной области, а также другую информацию, относящуюся к области.
[domain_realm]
Содержит отношения, которые сопоставляют субдомены и доменные имена с именами областей Kerberos. Это используется программами для определения того, в какой области должен находиться хост, учитывая его полное доменное имя.

и подробности о разделе DOMAIN_REALM:

Раздел [domain_realm] обеспечивает перевод имени хоста в имя области Kerberos для служб, предоставляемых этим хостом.

Имя тега может быть именем хоста или именем домена, где имена доменов обозначаются префиксом символа точки ('.'). Значение отношения - это имя области Kerberos для этого конкретного хоста или домена. Имена хостов и доменные имена должны быть в нижнем регистре.

Если запись о переводе не применяется, область хоста считается частью домена имени хоста.

Таким образом, он должен указывать не непосредственно на (K) DC, а на область, и это отображение немного более конкретное, чем default_realm. В Вашей простой настройке он вообще не нужен, потому что .dept.example.com = DEPT.EXMAMPLE.COM это именно то, что происходит, если нет записи о применении перевода.
Мысль dept.example.com = DEPT.EXMAMPLE.COM может вмешаться, но я сомневаюсь, что это необходимо, поскольку у вас указана глобальная область default_realm, которую следует использовать, если не найдено определение области EXMAMPLE.COM.