4. Сборка и установка программного обеспечения OpenLDAP
В этом разделе подробно рассказывается о том, как собрать и установить пакет программного обеспечения OpenLDAP, включая slapd(8), Автономный демон
4.1. Получение и распаковка программного обеспечения
Вы можете получить программное обеспечение OpenLDAP со страницы закачек проекта по адресу http://www.openldap.org/software/download/ или прямо с сервиса
Для общего использования проект предоставляет два вида пакетов. Проект выпускает релизы (releases), в которых доступны новые функции и исправления ошибок. Хотя проект заботится о том, чтобы повысить стабильность этих релизов, проблемы, как обычно, обнаруживаются только после выпуска релиза. Стабильным (stable) релизом считается последний релиз, который продемонстрировал стабильность во время общего использования.
Пользователи программного обеспечения OpenLDAP могут выбирать по своему желанию между новыми возможностями и продемонстрированной стабильностью, и устанавливать наиболее подходящий им вид пакета.
После скачивания программного обеспечения OpenLDAP, Вам нужно распаковать дистрибутив из архива и сменить рабочую директорию на корневую директорию дистрибутива:
-
gunzip -c openldap-VERSION.tgz | tar xf -
cd openldap-VERSION
Замените VERSION на версию Вашего дистрибутива.
Просмотрите идущие с дистрибутивом документы COPYRIGHT, LICENSE, README и INSTALL. Документы COPYRIGHT и LICENSE дают информацию о разрешениях на использование и копирование, а также об ограниченной гарантии пакета OpenLDAP. В документах README и INSTALL представлена детальная информация о требованиях, предъявляемых пакетом OpenLDAP к установленному на сервере программному обеспечению, и о процедуре установки.
4.2. Программное обеспечение, от которого зависит OpenLDAP
Программное обеспечение OpenLDAP использует для своей работы ряд пакетов, предоставляемых третьими лицами. В зависимости от возможностей, которые Вы собираетесь использовать, Вам может потребоваться скачать и установить дополнительные пакеты программного обеспечения. В этом подразделе даются некоторые детали о ПО третьих лиц, которое обычно требуется установить. Однако, чтобы получить актуальную информацию о зависимостях, прочтите документ README. Обратите внимание, что некоторые из перечисленных здесь пакетов ПО третьих лиц могут, в свою очередь, зависеть от дополнительных пакетов программного обеспечения. Устанавливайте каждый пакет согласно распространяемых с ним инструкций по установке.
4.2.1. Transport Layer Security
Клиенты и серверы OpenLDAP требуют установки библиотек
OpenSSL можно найти на http://www.openssl.org/. GnuTLS можно найти на http://www.gnu.org/software/gnutls/. Mozilla NSS можно найти на http://developer.mozilla.org/en/NSS.
Программное обеспечение OpenLDAP не будет полностью совместимо с LDAPv3, если его скрипт configure не определит доступность какой-либо библиотеки TLS.
4.2.2. Simple Authentication and Security Layer
Клиенты и серверы OpenLDAP требуют установки библиотеки Cyrus SASL для предоставления сервисов
Cyrus SASL можно найти на http://asg.web.cmu.edu/sasl/sasl-library.html. Cyrus SASL будет использовать библиотеки OpenSSL и Kerberos/GSSAPI, если они были предустановлены.
Программное обеспечение OpenLDAP не будет полностью совместимо с LDAPv3, если его скрипт configure не определит доступность установленной Cyrus SASL.
4.2.3. Сервис аутентификации Kerberos
Клиенты и серверы OpenLDAP поддерживают сервисы аутентификации
Heimdal Kerberos можно найти на http://www.pdc.kth.se/heimdal/. MIT Kerberos можно найти на http://web.mit.edu/kerberos/www/.
Настоятельно рекомендуется использовать сервисы строгой аутентификации, такие, как предоставляет Kerberos.
4.2.4. Программное обеспечение баз данных
Основной механизм манипуляции данными slapd(8)
Устаревшие механизмы манипуляции данными slapd(8)
Ваша операционная система может предоставлять поддерживаемую версию Berkeley DB в основной системе или как дополнительный программный компонент. В противном случае, Вам нужно получить и установить её самостоятельно. При необходимости, Вы можете получить Berkeley DB с сайта Oracle Corporation.
На сайте будет доступно несколько версий. Berkeley DB версий 6.0.20 и выше используют лицензию на программное обеспечение, несовместимую с технологией LDAP, поэтому их не следует применять вместе с OpenLDAP.
Примечание: Смотрите также Рекомендуемые версии зависимостей программного обеспечения OpenLDAP.
4.2.5. Потоки
OpenLDAP спроектирован так, чтобы использовать преимущества, предоставляемые потоками. OpenLDAP поддерживает POSIX pthreads, Mach CThreads, и некоторые другие. Скрипт configure пожалуется, если не сможет найти подходящей подсистемы потоков. Если это случилось, посмотрите, пожалуйста, раздел Software|Installation|Platform Hints OpenLDAP FAQ http://www.openldap.org/faq/.
4.2.6. TCP Wrappers
slapd(8) поддерживает TCP Wrappers (фильтры контроля доступа уровня IP), если они предустановлены. Рекомендуется использование TCP Wrappers или других фильтров доступа уровня IP (например таких, которые предоставляются IP-фаерволами) на серверах, содержащих информацию ограниченного распространения.
4.3. Запуск configure
Пришло время запустить скрипт configure с опцией --help. В результате Вы получите список опций, которые можно поменять при сборке OpenLDAP. С помощью этого метода можно включить или отключить многие функции OpenLDAP.
./configure --help
Скрипт configure также обращает внимание на некоторые переменные, задаваемые как в командной строке, так и в окружении. Эти переменные включают в себя:
Переменная | Описание |
CC | Указывает альтернативный компилятор C |
CFLAGS | Указывает дополнительные флаги компилятора |
CPPFLAGS | Указывает флаги препроцессора C |
LDFLAGS | Указывает флаги компоновщика |
LIBS | Указывает дополнительные библиотеки |
Теперь запустите скрипт configure с любыми желаемыми опциями конфигурации или переменными.
./configure [опции] [переменная=значение ...]
В качестве примера, предположим, что мы хотим установить OpenLDAP с механизмом манипуляции данными BDB и поддержкой TCP Wrappers. По умолчанию, поддержка BDB включена, а TCP Wrappers — нет. Поэтому нам нужно указать только --enable-wrappers , чтобы добавить поддержку TCP Wrappers:
./configure --enable-wrappers
Однако, выполнение данной команды закончится неудачей, если программное обеспечение, от которого зависит OpenLDAP, не установлено в системных директориях. Например, если заголовочные файлы и библиотеки TCP Wrappers установлены соответственно в /usr/local/include и /usr/local/lib, скрипт configure обычно следует запускать таким образом:
./configure --enable-wrappers \ CPPFLAGS="-I/usr/local/include" \ LDFLAGS="-L/usr/local/lib -Wl,-rpath,/usr/local/lib"
Чаще всего, скрипт configure сам определяет соответствующие настройки. Если на этом этапе Вы столкнулись с трудностями, проконсультируйтесь с документацией по Вашей платформе и проверьте Ваши опции configure, если Вы их устанавливали.
4.4. Сборка программного обеспечения
При удачном окончании работы скрипта configure, последней строкой вывода будет:
Please "make depend" to build dependencies
Если последняя строка отличается, значит выполнение configure окончилось неудачей, и Вам нужно просмотреть вывод скрипта, чтобы определить, что пошло не так. Пока configure не завершится удачно, продолжать дальше не следует.
Чтобы построить зависимости, запустите:
make depend
Теперь соберём программное обеспечение. На этом этапе происходит фактическая компиляция OpenLDAP.
make
Вам нужно внимательно изучить вывод этой команды, чтобы убедиться, что всё собрано правильно. Обратите внимание, что эта команда, кроме самого slapd(8), собирает также библиотеки LDAP и соответствующее клиентское программное обеспечение.
4.5. Тестирование программного обеспечения
Когда программное обеспечение было правильно сконфигурировано и успешно собрано, нужно выполнить набор тестов для проверки сборки.
make test
Будут запущены тесты, применимые к Вашей конфигурации, и они должны успешно пройти. Некоторые тесты, такие, как тест репликации, могут быть пропущены, если они не поддерживаются Вашей конфигурацией.
4.6. Установка программного обеспечения
После того, как Вы успешно протестировали программное обеспечение, пора его установить. Для этого Вам понадобятся права на запись в директории установки, которые Вы указали при запуске configure. По умолчанию, программное обеспечение OpenLDAP устанавливается в /usr/local. Если Вы поменяли эту настройку опцией --prefix при запуске configure, ПО будет установлено в то место, которое Вы указали.
Обычно, установка требует прав администратора. Находясь в корне каталога с исходным кодом OpenLDAP, выполните:
su root -c 'make install'
и введите соответствующий пароль при запросе.
Вам нужно внимательно изучить вывод этой команды, чтобы убедиться, что всё установлено правильно. По умолчанию, конфигурационные файлы slapd(8) находятся в /usr/local/etc/openldap. Дополнительную информацию смотрите в разделе Настройка slapd.