L i n u x P a r k при поддержке ВебКлуба |
Назад | Оглавление | Вперед |
Глава 17 Серверное программное обеспечение (Сервис баз данных) - OpenLDAP серверВ этой главеOpenLDAP сервер Конфигурации Организация защиты OpenLDAP Утилиты создания и поддержки OpenLDAP Утилиты пользователя OpenLDAP Netscape Address Book клиент для LDAP Linux сервер баз данных PostgreSQL Создание и инсталляция базы данных из-под пользователя Postgres Конфигурации Команды |
Если мы говорим в этой книге о безопасности и оптимизации, то почему вдруг возникает глава посвященная OpenLDAP? Сервер каталогов OpenLDAP расширит ваши горизонты за счет использования его возможностей. Мы можем использовать ее возможности дублирования для централизации и объединения различной информации на одном сервере для всех других серверов нашей сети. Представьте себе возможности добавления и отключения учетных записей Unix или NT, установка доступа к Веб серверу для служебного использования, добавление почтовых адресов и псевдонимов, все с единственной операцией доступной как NIS сервис, с добавлением возможности SSL шифрования и скоростью объектно-ориентированных иерархий. Другое интересное использование √ это создание надежного списка разработчиков на одном или более LDAP серверов, доступ к которому может быть открыт из приватной сети или из Интернет.
Как сказано на веб сервере OpenLDAP:
LDAP (Lightweight Directory Access Protocol) √ это открытый протокол для доступа к информационным сервисам. Он работает через транспортные протоколы Интернет, такие как TCP, и может быть использован для доступа к автономным серверам каталогов или каталогам X.500.
Эти инструкции предполагают.
Unix-совместимые команды.
Путь к исходным кодам ⌠/var/tmp■ (возможны другие варианты).
Инсталляция была проверена на Red Hat Linux 6.1 и 6.2.
Все шаги инсталляции осуществляются суперпользователем ⌠root■.
OpenLDAP версии 1.2.10
Пакеты.
Домашняя страница OpenLDAP: http://www.openldap.org/
FTP сервер OpenLDAP: 204.152.186.57
Вы должны скачать: openldap-1.2.10.tgz
Тарболы.
Хорошей идеей будет создать список файлов установленных в вашей системе до
инсталляции OpenLDAP и после, в результате, с помощью утилиты diff вы
сможете узнать какие файлы были установлены. Например,
До инсталляции:
find /* > OpenLDAP1
После инсталляции:
find /* > OpenLDAP2
Для получения списка установленных файлов:
diff OpenLDAP1 OpenLDAP2 > OpenLDAP-Installed
Раскройте тарбол:
[root@deep /]# cp openldap-version.tgz /var/tmpПерейдите в новый OpenLDAP каталог и введите следующие команды на вашем терминале:
Шаг 1Важно заметить, что вы можете настроить три различных вида баз данных на использование с LDAP. Высокопроизводительная, с памятью на диске база данных ⌠LDBM■; интерфейс базы данных к произвольным UNIX командам или shell скриптам, называемый ⌠SHELL■; и простейшая база данных используемая в файле паролей ⌠PASSWD■.
По умолчанию OpenLDAP подразумевает использование базы данных LDBM,так что если вы хотите настроиться на другой тип базы данных, вы должны при инсталляции определить ее. Для SHELL вы должны добавить опцию ⌠--enable-shell■, а для PASSWD (используется как замена сервису NIS) - ⌠--enable-passwd■.
CC="egcs" \Эти опции настраивают OpenLDAP на следующее:
ЗАМЕЧАНИЕ. Опции компиляции предложенные выше предполагают использование базы данных LDBM. Для других типов баз данных используйте соответствующие опции, описанные выше.
Шаг 2Сейчас мы должны скомпилировать и инсталлировать OpenLDAP на сервере:
[root@deep openldap-1.2.10]# make dependКоманда "make depend" будет создавать необходимые зависимости для различных файлов, ⌠make■ компилирует все файлы с исходными кодами в исполняемые двоичные файлы и затем ⌠make install■ инсталлирует исполняемые файлы и файлы поддержки в необходимые каталоги. Команда ⌠make■ в подкаталоге ⌠/test■ будет делать некоторые важные тесты для проверки функциональности вашего LDAP сервера перед инсталляцией. Если некоторые тесты закончатся ошибкой, вам необходимо исправить их перед продолжением инсталляции.
[root@deep openldap-1.2.10]# install -d -m 700 /var/ldapКоманда ⌠install■ будет создавать новый каталог с именем ⌠ldap■ в каталоге ⌠/var■ и установит режим доступа к нему чтение, запись и исполнение только для суперпользователя ⌠root■ (700) из соображений безопасности. Команда ⌠strip■ будет удалять все символы из объектных файлов. Это необходимо, чтобы сделать исполняемые файлы меньшего размера.
Очистка после работы
[root@deep /]# cd /var/tmp
[root@deep tmp]# rm -rf openldap-version/ openldap-version.tgz
Команды ⌠rm■ будет удалять все файлы с исходными кодами, которые мы
использовали при компиляции и инсталляции OpenLDAP. Также будет удален
сжатый архив OpenLDAP из каталога ⌠/var/tmp■.
Все программное обеспечение, описанное в книге, имеет определенный каталог
и подкаталог в архиве ⌠floppy.tgz■, включающей все конфигурационные файлы
для всех программ. Если вы скачаете этот файл, то вам не нужно будет вручную
воспроизводить файлы из книги, чтобы создать свои файлы конфигурации.
Скопируйте файлы связанные с OpenLDAP из архива, измените их под свои
требования и поместите в нужное место так, как это описано ниже. Файл с
конфигурациями вы можете скачать с адреса:
http://www.openna.com/books/floppy.tgz
Для запуска OpenLDAP сервера следующие файлы должны быть созданы или скопированы в нужный каталог:
Копируйте файл slapd.conf в каталог ⌠/etc/openldap/■.
Копируйте файл ldap в каталог ⌠/etc/rc.d/init.d/■.
Вы можете взять эти файлы из нашего архива floppy.tgz.
Файл ⌠/etc/openldap/slapd.conf■ это основной конфигурационный файл для автономного LDAP демона. Все опции: права доступа, пароль, тип базы данных, месторасположение базы данных и прочие могут быть настроены в нем и применены к демону ⌠slapd■. Нижеприведенный пример настраивает файл ⌠slapd.conf■ на использование базы данных LDBM.
Редактируйте файл slapd.conf (vi /etc/openldap/slapd.conf) и добавьте/измените следующую информацию:
# # Смотрите slapd.conf(5) для деталей о конфигурационных опциях. # Этот файл не должен быть доступен для чтения всем пользователям. # include /etc/openldap/slapd.at.conf include /etc/openldap/slapd.oc.conf schemacheck off #referral ldap://ldap.itd.umich.edu pidfile /var/run/slapd.pid argsfile /var/run/slapd.args ##################################################################### ## # определения базы данных ldbm ##################################################################### ## database ldbm suffix "o=openna, c=com" directory /var/ldap rootdn "cn=admin, o=openna, c=com" rootpw secret # избегайте использование пароля записанного открытым текстом, особенно # для пользователя rootdn. Смотрите slapd.conf(5) для деталей. # определение индексируемых атрибутов ldbm index cn,sn,uid index objectclass pres,eq index default none # определение прав доступа к ldbm defaultaccess read access to attr=userpassword by self write by dn="cn=admin, o=openna, c=com" write by * compare
Вы должны убедиться, что установили следующие опции в вашем файле ⌠slapd.conf■ перед запуском демона slapd:
suffix ⌠o=openna, c=com■
Эта опция определяет DN (отличительное имя) корня поддерева, которое вы
пытаетесь создать. Другими словами, это показывает какие элементы должны
храниться в этой базе данных.
directory /var/ldap
Эта опция определяет каталог, где должны размещаться база данных и
соответствующие индексные файлы LDAP. Мы должны установить этот
параметр в ⌠/var/ldap■, потому что мы создали этот каталог на более ранней
стадии инсталляции специально для этих целей.
rootdn "cn=admin, o=openna, c=com"
Эта опция определяет DN (отличительное имя) элемента, которому разрешено
делать все, что угодно в каталоге LDAP. Имя введенное здесь может
фактически не существовать в файле ⌠/etc/passwd■.
rootpw secret
Эта опция определяет пароль, который может использоваться для
аутентификации элемента "super-user" базы данных. Это пароль для опции
rootdn определенной выше. Важно не использовать пароли, записанные
открытым текстом, а использовать вместо них шифрованные пароли.
index cn,sn,uid | index objectclass pres,eq | index default none
Эти опции определяет индексные определения, которые вы хотите создать и
управлять в определении базы данных. Параметры, которые мы определили в
нашем ⌠slapd.conf■ файле, указывают поддерживать индексы для атрибутов cn,
sn и uid (index cn,sn,uid), индексы наличия и эквивалентности для атрибута
objectclass (index objectclass pres,eq), и не создавать индексы для всех остальных
атрибутов (index default none). Смотрите руководство пользователя для большей
информации.
Последние опции в файле ⌠slapd.conf■ связаны с контролем доступа к каталогу LDAP.
defaultaccess read access to attr=userpassword by self write by dn="cn=admin, o=openna, c=com" write by * compare
Этот пример применяется для элементов в поддереве "o=openna, c=com". Доступ на чтение разрешается всем, и сам элемент может записывать все свои атрибуты, исключая userpassword. Атрибут userpassword может быть записан только определенным элементом (admin), и сопоставим всеми. Смотрите ваше руководство пользователя для получения большей информации.
Настроим ваш скрипт ⌠/etc/rc.d/init.d/ldap■ для старта и остановки LDAP сервера. Создайте скрипт ldap (touch /etc/rc.d/init.d/ldap) и добавьте в него:
#!/bin/sh # # ldap Это shell скрипт script заботящийся о запуске и остановке # сервера ldap (slapd и slurpd). # # chkconfig: - 70 40 # описание: LDAP (Lightweight Directory Access Protocol) используется # для реализации индустриального стандарта службы каталогов. # имя процесса: slapd # конфигурационный файл: /etc/openldap/slapd.conf # pid файл: /var/run/slapd.pid # библиотека исходных функций. . /etc/rc.d/init.d/functions # Исходная сетевая конфигурация. . /etc/sysconfig/network # Проверка, что сеть работает. [ ${NETWORKING} = "no" ] && exit 0 [ -f /usr/sbin/slapd ] || exit 0 [ -f /usr/sbin/slurpd ] || exit 0 RETVAL=0 # See how we were called. case "$1" in start) # Запуск демонов. echo -n "Starting ldap: " daemon slapd RETVAL=$? if [ $RETVAL -eq 0 ]; then if grep -q "^replogfile" /etc/openldap/slapd.conf; then daemon slurpd RETVAL=$? [ $RETVAL -eq 0 ] && pidof slurpd | cut -f 1 -d " " > /var/run/slurpd fi fi echo [ $RETVAL -eq 0 ] && touch /var/lock/subsys/ldap ;; stop) # Остановка демонов. echo -n "Shutting down ldap: " killproc slapd RETVAL=$? if [ $RETVAL -eq 0 ]; then if grep -q "^replogfile" /etc/openldap/slapd.conf; then killproc slurpd RETVAL=$? fi fi echo if [ $RETVAL -eq 0 ]; then rm -f /var/lock/subsys/ldap rm -f /var/run/slapd.args fi ;; status) status slapd RETVAL=$? if [ $RETVAL -eq 0 ]; then if grep -q "^replogfile" /etc/openldap/slapd.conf; then status slurpd RETVAL=$? fi fi ;; restart) $0 stop $0 start RETVAL=$? ;; reload) killproc -HUP slapd RETVAL=$? if [ $RETVAL -eq 0 ]; then if grep -q "^replogfile" /etc/openldap/slapd.conf; then killproc -HUP slurpd RETVAL=$? fi fi ;; *) echo "Usage: $0 start|stop|restart|status}" exit 1 esac exit $RETVAL
Сейчас, сделаем этот скрипт исполняемым и изменим права доступа:
[root@deep /]# chmod 700 /etc/rc.d/init.d/ldap
Создадим символическую rc.d ссылку для OpenLDAP командой:
[root@deep /]# chkconfig --add ldap
Скрипт OpenLDAP не будет автоматически стартовать демон slapd, когда вы
перезагружаете сервер. Вы можете изменить это выполнив команду:
[root@deep /]# chkconfig --level 345 ldap on
Запустите сервер OpenLDAP вручную следующей командой:
[root@deep /]# /etc/rc.d/init.d/ldap start
Starting ldap: [ OK ]
Бит постоянства может быть использован для предотвращения случайного удаления или переписывания защищаемых файлов. Он также предотвращает возможность создания символических ссылок к этим файлам. После того как ваш файл ⌠slapd.conf■ настроен, можно его иммунизировать следующей командой:
[root@deep /]# chattr +i /etc/openldap/slapd.confДля получения большей информации, вы можете прочитать несколько страниц руководства:
$ man ldapd (8) √ демон LDAP X.500 протокла
$ man ldapdelete (1) √ утилита для удаления элементов ldap
$ man ldapfilter.conf (5) √ конфигурационный файл для LDAP осуществляющий фильтр операций
$ man ldapfriendly (5) √ файл данных для дружественных операций LDAP
$ man ldapmodify, ldapadd (1) √ утилита для изменения и добавления элементов ldap
$ man ldapmodrdn (1) - RDN утилита для модификации элементов ldap
$ man ldappasswd (1) √ изменения пароля элементов LDAP
$ man ldapsearch (1) √ утилита поиска ldap
$ man ldapsearchprefs.conf (5) √ конфигурационный файл для поиска предпочтительных операций LDAP
$ man ldaptemplates.conf (5) √ конфигурационный файл для операций отображения образцов LDAP
$ man ldif (5) - LDAP Data Interchange Format
$ man slapd (8) √ автономный демон LDAP
$ man slapd.conf (5) √ конфигурационный файл для slapd, автономного демона LDAP
$ man slurpd (8) √ автономный LDAP Update Replication Daemon
$ man ud (1) √ интерактивная программа запросов к серверу каталогов LDAP
Есть два метода создания базы данных для LDAP, первый оффлайновый с помощью утилиты ⌠ldif2ldbm■ и второй онлайновый при помощи утилиты ⌠ldapadd■. Обычно, вы будете использовать оффлайновый метод, когда вы хотите добавить несколько тысяч элементов в вашу базу данных и онлайновый, когда надо добавить небольшое число элементов. Также важно заметить, что оффлайновый метод требует, чтобы ваш ⌠slapd■ демон не был запущен, а онлайновый требует работы ⌠slapd■ демона.
Создание базы данных LDMB оффлайновым методом при помощи утилиты ⌠ldif2ldbm■Первое, что вы должны сделать это создать входной файл LDIF содержащий текстовое представление ваших элементов. Текстовый файл, именуемый ⌠my- data-file■, может быть использован как пример (конечно, ваш реальный входной LDIF файл будет содержать много больше информации). Когда вы инсталлируете OpenLDAP первый раз и имеете много элементов, которые нужно положить в базу данных, всегда будет хорошей идеей положить всю эту информацию в текстовый файл и добавить ее в вашу базу данных при помощи утилиты ⌠ldif2ldbm■.
Шаг 1Создайте файл my-data-file (touch /tmp/my-data-file) и добавьте в него, например, следующие строки:
dn: o=openna, c=com o: openna objectclass: organization dn: cn=Gerhard Mourani, o=openna, c=com cn: Gerhard Mourani sn: Mourani mail: gmourani@videotron.ca title: Author objectclass: person dn: cn=Anthony Bay, o=openna, c=com cn: Anthony Bay sn: Bay homephone: (444) 111-2233 mobile: (444) 555-6677 mail: abay@openna.com objectclass: person dn: cn=George Parker, o=openna, c=com cn: George Parker sn: Parker telephonenumber: (555) 234-5678 fax: (543) 987-6543 mobile: (543) 321-4354 description: E-Commerce objectclass: person
Вышеприведенный пример показывает вам как конвертирует вашу информацию в LDIF файлы перед добавлением ее в ваш новый каталог. Консультируйтесь с вашей OpenLDAP документацией или книгой для получения большей информации.
Шаг 2Как только входной LDIF файл содержащий все элементы создан, мы можем добавить их в наш LDAP сервер каталогов. Для этого используйте следующую команду:
[root@deep tmp]# ldif2ldbm -i <inputfile> -f <slapdconfigfile>Опция ⌠-i■ с опцией <inputfile> оперделяет месторасположения LDIF файла. Опция <slapdconfigfile> задает месторасположение конфигурационного файла slapd, который определяет где создавать индексы, какие индексы создавать и т.д.
ЗАМЕЧАНИЕ. Важно заметить, что при этом режиме создания демон ⌠slapd■не должен быть запущен.
Создание базы данных LDMB онлайновым методом при помощи утилиты ⌠ldapadd■Если элементы в вашем сервере каталогов уже созданы или вы хотите добавить небольшое количество информации в вашу базу данных, то вы можете предпочесть использовать утилиту ⌠ldapadd■, чтобы выполнить вашу работу онлайн. Например, чтобы добавить элемент ⌠Europe Mourani■ используя утилиту ⌠ldapadd■, вы должны создать файл, называемый ⌠newentry■ в каталоге ⌠/tmp■.
Шаг 1Создайте файл newentry (touch /tmp/newentry) и добавьте в него следующие строки:
cn=Europe Mourani, o=openna, c=comПосле того, как файл ⌠newentry■ создан, мы должны добавить элемены в сервер каталогов LDAP. Для этого используйте следующую команду:
[root@deep /]# ldapadd -f /tmp/newentry -D "cn=admin, o=openna, c=com" -WВышеприведенная команда подразумевает что вы установили rootdn в "cn=admin, o=openna, c=com" и rootpw в "secret". Вам будет предложено ввести пароль.
ЗАМЕЧАНИЕ. Важно заметить, что во время использования этой утилиты демон ⌠slapd■ должен быть запущен.
ldapmodifyВ отличие от реляционных баз данных, где данные постоянно изменяются, сервер каталогов содержит информацию, которая единожды введенная изменяется редко. Но иногда, вам все же приходится модифицировать данные, и в этом вам может помочь утилита ⌠ldapmodify■. Она позволяет вам добавлять и модифицировать элементы хранящиеся на сервере каталогов. Допустим что мы хотим заменить содержимое элемента ⌠Europe Mourani■ атрибут почты на новое значение ⌠emourani@new.com■, для этого нам понадобятся следующие шаги:
Шаг 1Создаем файл modifyentry (touch /tmp/modifyentry) и добавляем в него следующее содержимое:
cn=Europe Mourani, o=openna, c=comПосле создания файла ⌠modifyentry■, мы должны заменить элемнты каталога LDAP сервера в соответствии с содержимым этого файла. Это делается следующей командой:
[root@deep /]# ladpmodify -D ▒cn=Admin, o=openna, c=com▓ -W -f <inputfile>где <inputfile> - имя файла ⌠modifyentry■, который был создан на шаге 1.
Утилита ldapsearch ищет в базе данных каталога LDAP информацию, которую
вы запрашиваете.
Искать в каталоге LDAP элемент, используя команду:
Эта команда будет возвращать все элементы и значения с именем europe и будет выводить результаты в стандартный вывод вашего терминала.
OpenLDAP может использоваться как:
Если вы имеете Netscape проинсталлированный на вашей Linux системе или любой другой операционной системе, то вы можете использовать его возможности Address Book для доступа к серверу каталогов LDAP, только что установленной на вашем Linux и запросить ваш сервер каталогов об информации подобной той, что вы получали используя команду ⌠ldapsearch■. Если вы интересуетесь как сделать это, то следуйте по шагам описанным ниже:
Например:
Сейчас вы сделаи все, что нужно, чтобы иметь возможность создавать запросы к вашему серверу каталогов LDAP на Linux, используя блок с именем ⌠Show names Containing:■ для запуска поиска и кликните на кнопке ⌠Search For:■ для получения результатов.
> /etc/openldap > /etc/openldap/ldap.conf > /etc/openldap/ldap.conf.default > /etc/openldap/ldapfilter.conf > /etc/openldap/ldapfilter.conf.default > /etc/openldap/ldaptemplates.conf > /etc/openldap/ldaptemplates.conf.default > /etc/openldap/ldapsearchprefs.conf > /etc/openldap/ldapsearchprefs.conf.default > /etc/openldap/slapd.conf > /etc/openldap/slapd.conf.default > /etc/openldap/slapd.at.conf > /etc/openldap/slapd.at.conf.default > /etc/openldap/slapd.oc.conf > /etc/openldap/slapd.oc.conf.default > /etc/openldap/ldapserver > /etc/rc.d/init.d/ldap > /etc/rc.d/rc0.d/K40ldap > /etc/rc.d/rc1.d/K40ldap > /etc/rc.d/rc2.d/K40ldap > /etc/rc.d/rc3.d/S70ldap > /etc/rc.d/rc4.d/S70ldap > /etc/rc.d/rc5.d/S70ldap > /etc/rc.d/rc6.d/K40ldap > /usr/bin/ud > /usr/bin/ldapsearch > /usr/bin/ldapmodify > /usr/bin/ldapdelete > /usr/bin/ldapmodrdn > /usr/bin/ldappasswd > /usr/bin/ldapadd > /usr/include/ldap.h > /usr/include/lber.h > /usr/include/ldap_cdefs.h > /usr/include/disptmpl.h > /usr/include/srchpref.h > /usr/lib/liblber.so.1.0.0 > /usr/lib/liblber.so.1 > /usr/lib/liblber.so > /usr/lib/liblber.la > /usr/lib/liblber.a > /usr/lib/libldap.so.1.0.0 > /usr/lib/libldap.so.1 > /usr/lib/libldap.so > /usr/lib/libldap.la > /usr/lib/libldap.a > /usr/man/man1/ud.1 > /usr/man/man1/ldapdelete.1 > /usr/man/man1/ldapmodify.1 > /usr/man/man1/ldapadd.1 > /usr/man/man1/ldapmodrdn.1 > /usr/man/man1/ldappasswd.1 > /usr/man/man1/ldapsearch.1 > /usr/man/man3/cldap_close.3 > /usr/man/man3/cldap_open.3 > /usr/man/man3/cldap_search_s.3 > /usr/man/man3/cldap_setretryinfo.3 > /usr/man/man3/lber-decode.3 > /usr/man/man3/lber-encode.3 > /usr/man/man3/ldap_open.3 > /usr/man/man3/ldap_errlist.3 > /usr/man/man3/ldap_err2string.3 > /usr/man/man3/ldap_first_attribute.3 > /usr/man/man3/ldap_next_attribute.3 > /usr/man/man3/ldap_first_entry.3 > /usr/man/man3/ldap_next_entry.3 > /usr/man/man3/ldap_count_entries.3 > /usr/man/man3/ldap_friendly.3 > /usr/man/man3/ldap_friendly_name.3 > /usr/man/man3/ldap_free_friendlymap.3 > /usr/man/man3/ldap_get_dn.3 > /usr/man/man3/ldap_explode_dn.3 > /usr/man/man3/ldap_explode_dns.3 > /usr/man/man3/ldap_dn2ufn.3 > /usr/man/man3/ldap_is_dns_dn.3 > /usr/man/man3/ldap_get_values.3 > /usr/man/man3/ldap_get_values_len.3 > /usr/man/man3/ldap_value_free.3 > /usr/man/man3/ldap_value_free_len.3 > /usr/man/man3/ldap_count_values.3 > /usr/man/man3/ldap_count_values_len.3 > /usr/man/man3/ldap_getfilter.3 > /usr/man/man3/ldap_init_getfilter.3 > /usr/man/man3/ldap_init_getfilter_buf.3 > /usr/man/man3/ldap_getfilter_free.3 > /usr/man/man3/ldap_getfirstfilter.3 > /usr/man/man3/ldap_getnextfilter.3 > /usr/man/man3/ldap_setfilteraffixes.3 > /usr/man/man3/ldap_build_filter.3 > /usr/man/man3/ldap_modify.3 > /usr/man/man3/ldap_modify_s.3 > /usr/man/man3/ldap_mods_free.3 > /usr/man/man3/ldap_modrdn.3 > /usr/man/man3/ldap_modrdn_s.3 > /usr/man/man3/ldap_modrdn2.3 > /usr/man/man3/ldap_modrdn2_s.3 > /usr/man/man3/ldap_init.3 > /usr/man/man3/ldap_result.3 > /usr/man/man3/ldap_msgfree.3 > /usr/man/man3/ldap_search.3 > /usr/man/man3/ldap_search_s.3 > /usr/man/man3/ldap_search_st.3 > /usr/man/man3/ldap_searchprefs.3 > /usr/man/man3/ldap_init_searchprefs.3 > /usr/man/man3/ldap_init_searchprefs_buf.3 > /usr/man/man3/ldap_free_searchprefs.3 > /usr/man/man3/ldap_first_searchobj.3 > /usr/man/man3/ldap_next_searchobj.3 > /usr/man/man3/ldap_sort.3 > /usr/man/man3/ldap_sort_entries.3 > /usr/man/man3/ldap_sort_values.3 > /usr/man/man3/ldap_sort_strcasecmp.3 > /usr/man/man3/ldap_ufn.3 > /usr/man/man3/ldap_ufn_search_s.3 > /usr/man/man3/ldap_ufn_search_c.3 > /usr/man/man3/ldap_ufn_search_ct.3 > /usr/man/man3/ldap_ufn_setprefix.3 > /usr/man/man3/ldap_ufn_setfilter.3 > /usr/man/man3/ldap.3 > /usr/man/man3/cldap.3 > /usr/man/man3/ldap_abandon.3 > /usr/man/man3/ldap_add.3 > /usr/man/man3/ldap_add_s.3 > /usr/man/man3/ldap_bind.3 > /usr/man/man3/ldap_bind_s.3 > /usr/man/man3/ldap_simple_bind.3 > /usr/man/man3/ldap_simple_bind_s.3 > /usr/man/man3/ldap_kerberos_bind_s.3 > /usr/man/man3/ldap_kerberos_bind1.3 > /usr/man/man3/ldap_kerberos_bind1_s.3 > /usr/man/man3/ldap_kerberos_bind2.3 > /usr/man/man3/ldap_kerberos_bind2_s.3 > /usr/man/man3/ldap_unbind.3 > /usr/man/man3/ldap_unbind_s.3 > /usr/man/man3/ldap_set_rebind_proc.3 > /usr/man/man3/ldap_cache.3 > /usr/man/man3/ldap_enable_cache.3 > /usr/man/man3/ldap_disable_cache.3 > /usr/man/man3/ldap_destroy_cache.3 > /usr/man/man3/ldap_flush_cache.3 > /usr/man/man3/ldap_uncache_entry.3 > /usr/man/man3/ldap_uncache_request.3 > /usr/man/man3/ldap_set_cache_options.3 > /usr/man/man3/ldap_charset.3 > /usr/man/man3/ldap_set_string_translators.3 > /usr/man/man3/ldap_enable_translation.3 > /usr/man/man3/ldap_translate_from_t61.3 > /usr/man/man3/ldap_translate_to_t61.3 > /usr/man/man3/ldap_t61_to_8859.3 > /usr/man/man3/ldap_8859_to_t61.3 > /usr/man/man3/ldap_compare.3 > /usr/man/man3/ldap_compare_s.3 > /usr/man/man3/ldap_delete.3 > /usr/man/man3/ldap_delete_s.3 > /usr/man/man3/ldap_disptmpl.3 > /usr/man/man3/ldap_init_templates.3 > /usr/man/man3/ldap_init_templates_buf.3 > /usr/man/man3/ldap_free_templates.3 > /usr/man/man3/ldap_first_disptmpl.3 > /usr/man/man3/ldap_next_disptmpl.3 > /usr/man/man3/ldap_oc2template.3 > /usr/man/man3/ldap_tmplattrs.3 > /usr/man/man3/ldap_first_tmplrow.3 > /usr/man/man3/ldap_next_tmplrow.3 > /usr/man/man3/ldap_first_tmplcol.3 > /usr/man/man3/ldap_next_tmplcol.3 > /usr/man/man3/ldap_entry2text.3 > /usr/man/man3/ldap_entry2text_search.3 > /usr/man/man3/ldap_vals2text.3 > /usr/man/man3/ldap_entry2html.3 > /usr/man/man3/ldap_entry2html_search.3 > /usr/man/man3/ldap_vals2html.3 > /usr/man/man3/ldap_error.3 > /usr/man/man3/ldap_perror.3 > /usr/man/man3/ld_errno.3 > /usr/man/man3/ldap_result2error.3 > /usr/man/man3/ldap_ufn_timeout.3 > /usr/man/man3/ldap_url.3 > /usr/man/man3/ldap_is_ldap_url.3 > /usr/man/man3/ldap_url_parse.3 > /usr/man/man3/ldap_free_urldesc.3 > /usr/man/man3/ldap_url_search.3 > /usr/man/man3/ldap_url_search_s.3 > /usr/man/man3/ldap_url_search_st.3 > /usr/man/man5/ldap.conf.5 > /usr/man/man5/ldapfilter.conf.5 > /usr/man/man5/ldapfriendly.5 > /usr/man/man5/ldapsearchprefs.conf.5 > /usr/man/man5/ldaptemplates.conf.5 > /usr/man/man5/ldif.5 > /usr/man/man5/slapd.conf.5 > /usr/man/man5/slapd.replog.5 > /usr/man/man5/ud.conf.5 > /usr/man/man8/centipede.8 > /usr/man/man8/chlog2replog.8 > /usr/man/man8/edb2ldif.8 > /usr/man/man8/go500.8 > /usr/man/man8/go500gw.8 > /usr/man/man8/in.xfingerd.8 > /usr/man/man8/ldapd.8 > /usr/man/man8/ldbmcat.8 > /usr/man/man8/ldif.8 > /usr/man/man8/ldif2ldbm.8 > /usr/man/man8/ldif2index.8 > /usr/man/man8/ldif2id2entry.8 > /usr/man/man8/ldif2id2children.8 > /usr/man/man8/mail500.8 > /usr/man/man8/fax500.8 > /usr/man/man8/rcpt500.8 > /usr/man/man8/slapd.8 > /usr/man/man8/slurpd.8 > /usr/sbin/ldif > /usr/sbin/in.xfingerd > /usr/sbin/go500 > /usr/sbin/go500gw > /usr/sbin/mail500 > /usr/sbin/rp500 > /usr/sbin/fax500 > /usr/sbin/xrpcomp > /usr/sbin/rcpt500 > /usr/sbin/slapd > /usr/sbin/ldif2ldbm > /usr/sbin/ldif2index > /usr/sbin/ldif2id2entry > /usr/sbin/ldif2id2children > /usr/sbin/ldbmcat > /usr/sbin/centipede > /usr/sbin/ldbmtest > /usr/sbin/slurpd > /usr/share/openldap > /usr/share/openldap/ldapfriendly > /usr/share/openldap/go500gw.help > /usr/share/openldap/rcpt500.help > /var/ldap
Назад | Оглавление | Вперед |