Настройка ведомого KDC

Настройка ведомого KDC

Ведомый KDC настраивается практически так же, как и ведущий. Вам надо отредактировать файлы krb5.conf и kdc.conf, использовать kdb5_util для создания файлов базы данных, сформировать файл ACL и вызвать команду ktadd программы kadmin.local, чтобы записать ярлык в файл.

Каждому KDC требуется файл, в котором перечислены все KDC (или, точнее, принципалы, связанные со всеми KDC. Этот файл необходим для передачи данных из базы. Указанный файл имеет имя kpropd.acl и чаще всего хранится в каталоге /var/kerberos/krb5kdc либо /usr/local/var/krb5kdc. Содержимое этого файла выглядит приблизительно следующим образом:

host/kerberos.threeroomco.com@THREEROOMCO.COM

host/kerberos-1.threeroomco.com@THREEROOMCO.COM

Сформировав данный файл для каждого из KDC, надо сконфигурировать ведомый KDC для выполнения двух серверов: kpropd и klogind. Запуск этих серверов можно осуществлять с помощью суперсервера. Соответствующие записи /etc/inetd.conf могут иметь следующий вид:

krb5_prop stream tcp nowait root /usr/kerberos/sbin/kpropd

kpropd eklogin stream tcp nowait root

 /usr/kerberos/sbin/klogind klogind -k -c -e

Возможно, на вашем компьютере расположение файлов будет отличаться от указанного выше. Если же в вашей системе используется суперсервер xinetd, вам придется внести изменение в его конфигурационный файл (о настройке суперсерверов см. в главе 4). Если в файле /etc/services отсутствуют записи для krb5_prop и eklogin, вам надо добавить в файл следующие строки:

krb5_prop 754/tcp # Передача данных ведомому

                  # серверу Kerberos

eklogin 2105/tcp  # Удаленная регистрация

                  # с использованием шифрования

Распространение данных осуществляется ведущим KDC и состоит из двух этапов: извлечение содержимого базы данных и передача его ведомым серверам. Сценарий, выполняющий обе задачи, представлен в листинге 6.3. Возможно, вам придется внести в него изменения, отражающие особенности вашей системы и структуру сети. Если в сети существует несколько ведомых серверов, вам надо вызвать kprop для каждого из них. Запуск данного сценария через определенные промежутки времени планируется с помощью инструмента cron.

Листинг 6.3. Пример сценария, предназначенного для передачи базы данных Kerberos ведомым KDC

# !/bin/sh

/usr/kerberos/sbin/kdb5_util dump

/usr/kerberos/var/krb5kdc/slave_datatrans

/usr/kerberos/sbin/kprop -f

/usr/kerberos/var/krb5kdc/slave_datatrans

 kerberos-1.mil.threeroomco.com