Европейский Университет в Санкт-Петербурге
Опубликован: 19.10.2005 | Доступ: свободный | Студентов: 1735 / 152 | Оценка: 4.31 / 3.82 | Длительность: 18:28:00
Лекция 9:

NFS. Настройка клиента. Аутентификация в сети. NIS и NIS+

< Лекция 8 || Лекция 9: 12345 || Лекция 10 >

Настройка серверов и клиентов NIS

Сервер NIS хранит всю информацию о доменах NIS в подкаталогах каталога /var/yp. На главном сервере NIS должны быть запущены процессы ypserv (отвечает на запросы клиентов ), ypxfrd (обслуживает запросы от подчиненных серверов NIS для репликации информации), yppasswdd (демон изменения пароля пользователя).

Настройка главного сервера NIS

Для настройки необходимо выполнить следующие действия:

  1. Убедиться, что в файлах passwd, netgroup и др. содержится верная информация, в самом деле подлежащая разделению в сети.
  2. Перейти в каталог /var/yp.
  3. Запустить команду domainname имя_домена_NIS (для присвоения домену NIS желаемого имени).
  4. Запустить команду ypinit -m для инициализации домена NIS и создания всех необходимых карт NIS. Ключ -m означает master, главный сервер.
  5. Запустить необходимые демоны (как минимум, ypserv ).

В Solaris компьютер автоматически настроится на работу с NIS, если будет найден файл /etc/defaultdomain. Эту работу выполнит программа ypstart, которая при старте системы проверяет, установлено ли имя домена в этом файле.

Демон ypserv запускается автоматически, если соблюдаются все следующие условия:

  • указано имя домена в файле /etc/defaultdomain или в переменной среды окружения $domain ;
  • существует каталог /var/yp/имя_домена;
  • существует переменная YPDIR, и в каталоге $YPDIR (т.е. в каталоге, имя которого совпадает со значением этой переменной) есть доступный для выполнения файл ypserv.

Демон ypbind запускается автоматически, если соблюдаются все следующие условия:

  • указано имя домена в файле /etc/defaultdomain или в переменной среды окружения $domain ;
  • существует каталог /var/yp/binding/имя_домена;
  • существует переменная YPDIR, и в каталоге $YPDIR (т.е. в каталоге, имя которого совпадает со значением этой переменной) есть доступный для выполнения файл ypbind.

Серверы NIS одновременно являются и клиентами NIS, поэтому кроме серверных демонов, на них запускается и клиентский демон ypbind, который посылает запросы демону ypserv. По умолчанию демон ypbind пытается найти в сети сервер NIS своего домена, рассылая широковещательный запрос. Для того чтобы данный компьютер использовал строго определенный сервер NIS для получения информации с него, либо в случае, если сервер NIS находится в другом сегменте сети и широковещательный запрос до него не может дойти через маршрутизатор, следует запускать ypbind без ключа broadcast. Для настройки клиента для работы с определенным сервером NIS следует использовать команду ypset, а для настройки клиента NIS в целом используется ypinit с ключом с. Поэтому обе эти задачи вместе решаются так:

ypinit -c имя_сервера
ypset имя_сервера

Это настраивает запуск ypbind так, чтобы не происходило поиска сервера NIS в сети. В таком случае на клиенте NIS обязательно должен быть минимальный файл /etc/hosts, чтобы при запуске ypbind была возможность обратиться хотя бы к серверу NIS по имени.

Для изменения сценария запуска сервера NIS в Solaris следует модифицировать файл /etc/init.d/inetinit.

Настройка подчиненных серверов NIS

Настройка подчиненного сервера NIS всегда выполняется только после настройки главного. Отличие в этих настройках невелико, так как состоит только в том, что программе ypinit надо передать ключ -s (slave) вместо -m. Разумеется, инспектировать локальные копии файлов passwd и прочих на подчиненном сервере не требуется, ибо его задача - только принимать реплицированные карты NIS с главного сервера. Итак, для настройки подчиненного сервера следует:

  1. Перейти в каталог /var/yp.
  2. Запустить команду ypinit -s.
  3. Запустить необходимые демоны (как минимум, ypserv ).

Передачу карт NIS с главного сервера на подчиненные должны инициировать сами подчиненные серверы с помощью запуска процесса ypxfr. Следует запланировать запуск этого процесса из cron так, чтобы раз в сутки (или чаще, если файлы конфигураций обновляются очень часто) свежие карты запрашивались с главного сервера NIS. При наличии нескольких подчиненных серверов в сети имеет смысл для равномерного распределения нагрузки на главный сервер по времени запрашивать карты не со всех серверов одновременно, а поочереди.

Настройка клиентов NIS

Клиент не должен абсолютно во всем полагаться на сервер NIS. Следует иметь локальные файлы /etc/passwd, /etc/group и /etc/hosts. В файле passwd должны быть указаны основные предопределенные пользователи и, возможно, личная учетная запись системного администратора для экстренных случаев.

Помните о необходимости проверять порядок опроса служб имен (вначале NIS, затем локальные файлы) в /etc/nsswitch.conf. При переходе от аутентификации через локальные файлы к NIS или обратно не забывайте изменять файл /etc/nsswitch.conf в согласии с принятым решением о схеме аутентификации.

NIS: полезные программы

Некоторые утилиты помогают в администрировании NIS:

yppush - команда с главного сервера, требующая от всех подчиненных обновить свои копии карт NIS (дается при необходимости немедленного внесения изменений);

makedbm - создает хэшированную базу данных из текстового файла;

yppoll - выдает версию карты сервера;

yppasswd - меняет пароль пользователя.

ypcat ypservers - выводит список имен NIS -серверов домена;

ypcat -x - выводит карты NIS (аналогично ypwhich -x ).

< Лекция 8 || Лекция 9: 12345 || Лекция 10 >
Дмитрий Карачун
Дмитрий Карачун
Беларусь, Минск