
OpenLDAP — это программная реализация Lightweight Directory Access Protocol (LDAP). OpenLDAP является бесплатным программным обеспечением с открытым исходным кодом, его лицензия в стиле BSD называется OpenLDAP Public License. Его программное обеспечение LDAP с приводом командной строки доступно в большинстве дистрибутивов Linux, таких как CentOS, Ubuntu, Debian, SUSE и многих других.
OpenLDAP — это полный набор программного обеспечения для LDAP-серверов, который включает SLAPD (автономный LDAP-демон), SLURPD (автономный демон репликации обновлений LDAP), а также некоторые утилиты и инструменты для управления LDAP-серверами. OpenLDAP является высоконастраиваемым LDAP-сервером и поддерживает все основные вычислительные платформы.
В этой статье мы шаг за шагом проведём вас через установку сервера OpenLDAP на Debian 12. Вы также установите LDAP Account Manager или LAM, веб-приложение PHP, которое можно использовать для управления сервером OpenLDAP.
Предварительные условия
Для начала работы над этим руководством у вас должно быть следующее:
Сервер Debian 12 — В этой демонстрации используется машина с именем хоста ldap и IP-адрес 192.168.10.15.
Некорневой пользователь с привилегиями администратора.
Настройка FQDN
На первом этапе вы должны настроить правильное fqdn (Fully Qualified Domain Name) вашего сервера Debian. Это можно сделать с помощью утилиты hostnamectl и изменения параметра /etc/hosts файл.
Выполните приведенную ниже команду hostnamectl, чтобы установить fqdn для вашего сервера Debian. В данном случае fqdn, который будет использоваться для сервера OpenLDAP, будет следующим ldap.mydomain.local.
sudo hostnamectl set-hostname ldap.mydomain.local
С помощью команды редактора nano откройте файл /etc/hosts файл.
sudo nano /etc/hosts
Добавьте IP-адрес, имя хоста и fqdn вашего сервера OpenLDAP следующим образом:
192.168.10.15 ldap.mydomain.local ldap
После завершения сохраните файл и выйдите из редактора.
Наконец, выполните следующую команду, чтобы убедиться, что вы правильно указали fqdn. Затем убедитесь, что fqdn указывает на правильный IP-адрес.
sudo hostname -f sudo ping -c3 ldap.mydomain.local
В следующем выводе вы должны увидеть, что fqdn сервера Debian равен ldap.mydomain.local, на который указывает локальный IP-адрес 192.168.10.15.
Установка и сервер OpenLDAP
После настройки fqdn вы можете установить пакет сервера OpenLDAP через APT из официального репозитория Debian. Затем вы должны настроить некоторую базовую информацию о вашем сервере OpenLDAP, такую как имя домена и пароль администратора.
Перед установкой OpenLDAP выполните команду apt update команда, чтобы обновить индекс пакетов Debian.
sudo apt update
Теперь запустите команду apt install команду ниже, чтобы установить пакет сервера OpenLDAP. При появлении запроса введите y для подтверждения и продолжения установки.
sudo apt install slapd ldap-utils
Во время установки вам будет предложено задать пароль администратора для сервера OpenLDAP. Введите пароль и повторите.
После установки сервера OpenLDAP выполните следующую команду, чтобы настроить установку OpenLDAP.
sudo dpkg-reconfigure slapd
Выберите НЕТ на вопрос об отказе от конфигурации OpenLDAP по умолчанию.
Введите доменное имя вашего сервера OpenLDAP и выберите OK.
Теперь введите название организации и выберите OK.
Затем введите пароль администратора для сервера OpenLDAP и повторите его.
Когда вам будет предложено удалить старую базу данных сервера OpenLDAP, выберите НЕТ.
Чтобы завершить настройку сервера OpenLDAP, выберите ДА при запросе на перемещение старой базы данных OpenLDAP в новое место.
После завершения вы должны получить результат, подобный этому:
После того как сервер OpenLDAP настроен, выполните команду systemctl команда ниже, чтобы перезапустить службу OpenLDAP slapd и применить изменения. Затем проверьте slapd службу, чтобы убедиться, что она запущена.
sudo systemctl restart slapd sudo systemctl status slapd
Если служба запущена, вы должны получить сообщение следующего содержания активный (работает).
Наконец, выполните следующую команду, чтобы проверить доменное имя вашего сервера OpenLDAP.
sudo slapcat
Если все прошло успешно, вы должны увидеть, что сервер OpenLDAP настроен с пользовательским доменом. В данном случае имя домена — ldap.mydomain.local.
Обеспечение безопасности OpenLDAP с помощью UFW
В этом случае вы будете защищать свой сервер OpenLDAP с помощью UFW. Итак, вы установите UFW через APT, затем настроите UFW и откроете протоколы LDAP, LDAPS, HTTP и HTTPS.
Сначала установите UFW с помощью команды apt install, приведенной ниже. Введите y, чтобы подтвердить установку.
sudo apt install ufw
После установки UFW выполните следующую команду, чтобы добавить профиль OpenSSH и включить UFW. Введите y и нажмите ENTER для подтверждения.
sudo ufw allow OpenSSH sudo ufw enable
На экране появится сообщение «Брандмауэр активен и включен при запуске системы» должен указывать на то, что UFW теперь запущен и включен.
Далее выполните следующие команды ufw, чтобы включить LDAP, LDAPS и WWW Full профили на UFW.
sudo ufw allow LDAP sudo ufw allow LDAPS sudo ufw allow "WWW Full"
Наконец, выполните приведенную ниже команду, чтобы перезагрузить UFW и применить изменения. Затем проверьте состояние UFW, чтобы убедиться, что оба LDAP и LDAPS доступно на UFW.
sudo ufw reload sudo ufw status
Добавление базовой группы
После установки сервера OpenLDAP и UFW, теперь вам предстоит создать базовую группу для вашего сервера OpenLDAP с помощью LDIF-файла. Базовый домен здесь будет использоваться для хранения пользователей и групп OpenLDAP.
Создание нового LDIF-файла base.ldif с помощью следующей команды редактора nano.
sudo nano base.ldif
Вставьте следующую конфигурацию и не забудьте изменить имя домена на свой домен. В этом случае вы создадите две базовые группы, Люди и Группы.
# base.ldif
dn: ou=People,dc=ldap,dc=mydomain,dc=local
objectClass: organizationalUnit
ou: people
dn: ou=Groups,dc=ldap,dc=mydomain,dc=local
objectClass: organizationalUnit
ou: groups
После завершения сохраните файл и выйдите из редактора.
Теперь выполните следующую команду, чтобы добавить новую базовую группу через base.ldif файл. При появлении запроса введите пароль администратора OpenLDAP.
sudo ldapadd -x -D cn=admin,dc=ldap,dc=mydomain,dc=local -W -f base.ldif
Наконец, запустите программу ldapsearch Команда ниже, чтобы найти доступную базовую группу на вашем сервере OpenLDAP.
sudo ldapsearch -x -b "dc=ldap,dc=mydomain,dc=local" ou
Если все прошло успешно, вы должны увидеть две базовые группы People и Groups, доступные на OpenLDAP.
Добавление нового пользователя
В этом разделе вы создадите нового пользователя OpenLDAP с помощью LDIF-файла.
Чтобы создать нового пользователя OpenLDAP, необходимо сгенерировать зашифрованный пароль с помощью функции slappasswd команда ниже. Введите свой пароль и повторите, а затем скопируйте сгенерированный пароль.
sudo slappasswd
Теперь используйте следующую команду редактора nano для создания нового LDIF-файла user.ldif.
nano user.ldif
Вставьте следующую конфигурацию и не забудьте изменить данные о пользователе, пароле и имени домена. В этом случае вы создадите нового пользователя и группу debian.
# user.ldif
dn: uid=debian,ou=People,dc=ldap,dc=mydomain,dc=local
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
cn: debian
sn: bookworm
userPassword: {SSHA}23rFF1ofbNo5MRxEJo6D2Z4PT2GOxeWt
loginShell: /bin/bash
uidNumber: 2000
gidNumber: 2000
homeDirectory: /home/debian
shadowLastChange: 0
shadowMax: 0
shadowWarning: 0
dn: cn=debian,ou=Groups,dc=ldap,dc=mydomain,dc=local
objectClass: posixGroup
cn: debian
gidNumber: 2000
memberUid: debian
После завершения работы сохраните и выйдите из файла.
Далее выполните приведенную ниже команду ldapadd, чтобы добавить пользователя через LDIF-файл user.ldif . Введите пароль администратора OpenLDAP, когда появится запрос.
sudo ldapadd -x -D cn=admin,dc=ldap,dc=mydomain,dc=local -W -f user.ldif
Наконец, выполните следующую команду, чтобы найти пользователей, доступных в базовой группе Люди. В случае успеха вы должны увидеть пользователя debian добавлена в сервер OpenLDAP.
sudo ldapsearch -x -b "ou=People,dc=ldap,dc=mydomain,dc=local"
Установка диспетчера учетных записей LDAP
На этом этапе вы завершили установку сервера OpenLDAP. В следующих двух шагах вы установите LDAP Account Manager (LAM) из официального репозитория Debian, а затем сконфигурируете LAM с вашей установкой сервера OpenLDAP.
Выполните команду apt install ниже, чтобы установить ldap-account-manager на ваш сервер OpenLDAP. Установив ldap-account-manager, вы также установите дополнительные зависимости, такие как PHP 8.2 и веб-сервер Apache2.
sudo apt install ldap-account-manager
Введите y, чтобы подтвердить установку.
После установки менеджера учетных записей ldap-account-manager с помощью команды редактора nano откройте файл конфигурации PHP /etc/php/8.2/apache2/php.ini.
sudo nano /etc/php/8.2/apache2/php.ini
Изменить значение по умолчанию лимит_памяти параметр 256M.
memory_limit = 256M
После завершения сохраните и выйдите из файла.
Далее откройте конфигурацию Apache2 для ldap-account-manager /etc/apache2/conf-enabled/ldap-account-manager.conf , используя команду редактора nano.
sudo nano /etc/apache2/conf-enabled/ldap-account-manager.conf
Измените «Требовать все предоставленные» параметр к «Требовать подсеть ip», и обязательно добавьте свой локальный IP-адрес и разрешите ему доступ к диспетчеру учетных записей LDAP.
``` #Require all granted Require ip 127.0.0.1 192.168.10.0/24 ```
После завершения работы сохраните и выйдите из файла.
Теперь выполните приведенную ниже команду systemctl, чтобы перезапустить службу apache2 и применить изменения.
sudo systemctl restart apache2
Наконец, запустите веб-браузер и посетите IP-адрес сервера с помощью path lam (т.е: http://192.168.10.15/lam) для доступа к диспетчеру учетных записей LDAP. В случае успеха вы должны увидеть страницу LAM, как показано ниже:
Настройка диспетчера учетных записей LDAP
На следующем этапе вы добавите свой сервер OpenLDAP в LDAP Account Manager. Это можно легко сделать через веб-браузер.
Нажмите на меню Конфигурация LAM в правом верхнем углу.
Нажмите Редактировать профили сервера , чтобы изменить профиль OpenLDAP.
В ответ на запрос введите пользователя по умолчанию и пароль lam, затем нажмите кнопку OK продолжить.
Теперь вы должны увидеть страницу конфигурации LAM.
Внутри Общие настройки, настройте следующий раздел:
- На Настройки инструмента, введите доменное имя вашего сервера OpenLDAP.
- На странице Настройки безопасности, выберите метод входа в систему в виде Фиксированного списка и введите данные пользователя admin для сервера OpenLDAP.
- На Пароль профиля, введите новый пароль и повторите.
Нажмите . Сохранить чтобы применить изменения.
Далее нажмите на кнопку Типы учетных записей раздел настройка следующего раздела:
- На Пользователи в разделе введите базовый домен по умолчанию для пользователей OpenLDAP. В данном случае по умолчанию используется суффикс Люди.
- На Группы В разделе введите базовый домен по умолчанию для группы. В данном случае другой группой по умолчанию является Группы.
Нажмите Сохранить чтобы применить изменения.
Теперь вы должны быть перенаправлены на страницу входа в систему LAM. Введите admin пользователя и пароль для вашего сервера OpenLDAP, затем нажмите Вход.
В разделе Пользователи вы должны увидеть пользователя debian.
Заключение
Следуя этому пошаговому руководству, вы выполнили установку сервера OpenLDAP и LDAP Account Manager на Debian 12. Вы также обеспечили безопасность сервера OpenLDAP с помощью UFW и создали пользователя в OpenLDAP с помощью LDIF-файла. Наконец, вы интегрировали LAM с сервером OpenLDAP. Теперь вы можете добавлять новых пользователей на сервер OpenLDAP через LDAP Account Manager.