Запуск KDC
🕛 19.06.2009, 16:58
К этому моменту компоненты Kerberos- настроены и могут быть запущены. Для запуска сервером можно использовать способы, описанные в главе 4. Если пакет Kerberos поставлялся вместе с вашей системой, для него, вероятно, существует сценарий запуска SysV. Сценарий для KDC обычно называется krb5kdc, а сценарий для сервера администрирования - kadmin.Если сценарии SysV отсутствуют, вы можете использовать для запуска KDC программы krbSkdc и kadmin, которые входят в состав пакета Kerberos. Каждая программа порождает процесс из оболочки, поэтому вам нет необходимости указывать после ее имени символ "&". Вызывать данные программы можно из локального сценария запуска (/etc/rc.d/rc. local).
Настройка ведомого KDC
Ведомый KDC настраивается практически так же, как и ведущий. Вам надо отредактировать файлы krbS.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_j>rop 754/tcp # Передача данных ведомому
# серверу Kerberos eklogin 2105/tcp # Удаленная регистрация
# с использованием шифрования
Распространение данных осуществляется ведущим KDC и состоит из двух этапов: извлечение содержимого базы данных и передача его ведомым серверам. Сценарий, выполняющий обе задачи, представлен в листинге 6.3. Возможно, вам придется внести в него изменения, отражающие особенности вашей системы и структуру сети. Если в сети существует несколько ведомых серверов, вам надо вызвать kprop для каждого из них. Запуск данного сценария через определенные промежутки времени планируется с помощью инструмента сгоп.
Листинг 6.3. Пример сценария, предназначенного для передачи базы данных Kerberos ведомым KDC
/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