How-To-Install-OpenLDAP-Server-for-Centralized-Authentication

Как установить сервер OpenLDAP для централизованной аутентификации?

Рубрики:

LDAP, Linux, Security

Метки:

, , ,

Как установить сервер OpenLDAP для централизованной аутентификации? Lightweight Directory Access Protocol (короче говоря, LDAP) — это стандартный и широко используемый набор протоколов для доступа к службам каталогов. Служба каталогов — это общая информационная инфраструктура для доступа, управления, организации и обновления повседневных элементов и сетевых ресурсов, таких как пользователи, группы, устройства, адреса электронной почты, номера телефонов, тома и многие другие объекты.

Информационная модель LDAP основана на записях. Запись в каталоге LDAP представляет собой отдельную единицу или информацию и уникально идентифицируется тем, что называется отличительным именем (DN). Каждый из атрибутов записи имеет тип и одно или несколько значений.

Атрибут является частью информации, связанной с записью. Типами обычно являются мнемонические строки, такие как «cn» для общего имени или «mail» для адреса электронной почты. Каждому атрибуту присваивается одно или несколько значений, состоящих из списка через пробел.

Ниже приведена иллюстрация того, как информация размещена в каталоге LDAP.

Ldap-Information-Model

 

 

В этой статье мы покажем, как установить и настроить сервер OpenLDAP для централизованной аутентификации в Ubuntu 16.04/18.04 и CentOS 7.

 

Шаг 1: Установка сервера LDAP

1. Сначала начните с установки OpenLDAP, реализации LDAP с открытым исходным кодом и некоторых традиционных утилит управления LDAP с помощью следующих команд:

 

В Ubuntu во время установки пакета вам будет предложено ввести пароль для входа администратора в вашем каталоге LDAP, установите безопасный пароль и подтвердить его:

 

openldap

 

После завершения установки вы можете запустить службу, как описано далее.

2. В CentOS 7 выполните следующие команды, чтобы запустить демон сервера openldap, включите его для автоматического запуска во время загрузки и проверьте, работает ли он (в Ubuntu служба должна запускаться автоматически в systemd, вы можете просто проверить его статус):

 

slapd

 

3. Затем разрешите запросы к демону сервера LDAP через брандмауэр, как показано ниже:

 

Шаг 2. Настройка сервера LDAP

Примечание. Не рекомендуется редактировать конфигурацию LDAP вручную, вам необходимо добавить конфигурации в файл и использовать команду ldapadd или ldapmodify, чтобы загрузить их в каталог LDAP, как показано ниже.

 

4. Создайте пользователя-администратора OpenLDAP и назначьте пароль для этого пользователя. В приведенной ниже команде для данного пароля создается хэшированное значение, запомните его, вы будете использовать его в файле конфигурации LDAP.

 

slappasswd

 

5. Затем создайте файл LDIF (ldaprootpasswd.ldif), который используется для добавления записи в каталог LDAP.

 

Добавьте следующее содержание:

 

slapd

 

Объясним пару атрибутов представленных выше:

  • olcDatabase: указывает конкретное имя экземпляра базы данных и обычно находится в /etc/openldap/slapd.d/cn=config.
  • cn=config: указывает глобальные параметры конфигурации.
  • PASSWORD: это хэшированная строка, полученная при создании записи администратора.

6. Затем добавьте соответствующую запись LDAP, указав URI со ссылкой на сервер ldap и файл созданный выше:

 

slapd

 

Шаг 3. Настройка базы данных LDAP

7. Теперь скопируйте пример файла конфигурации базы данных для slapd в каталог /var/lib/ldap и установите правильные разрешения для файла:

 

8. Затем импортируйте некоторые базовые схемы LDAP из каталога /etc/openldap/schema следующим образом:

 

9. Теперь добавьте ваш домен в базу данных LDAP и создайте файл с именем ldapdomain.ldif для вашего домена:

 

Добавьте в него следующее содержимое (замените пример своим доменом и PASSWORD на хеш-значение, полученное ранее):

 

10. Затем добавьте указанную выше конфигурацию в базу данных LDAP с помощью следующей команды:

 

11. На этом этапе нам нужно добавить несколько записей в наш каталог LDAP. Создайте другой файл с именем baseldapdomain.ldif со следующим содержимым:

 

Сохраните файл и затем добавьте записи в каталог LDAP.

 

12. Следующим шагом является создание пользователя LDAP, например, sedicomm и установка пароля для этого пользователя следующим образом:

 

13. Затем создайте определения для группы LDAP в файле с именем ldapgroup.ldif со следующим содержимым:

 

В приведенной выше конфигурации gidNumber — это GID в /etc/group для sedicomm и добавьте его в каталог OpenLDAP.

 

14. Затем создайте другой файл LDIF с именем ldapuser.ldif и добавьте определения для пользователя sedicomm:

 

Затем загрузите конфигурацию в каталог LDAP:

 

После того, как вы настроили центральный сервер для аутентификации, последняя часть должна позволить клиенту аутентифицироваться с использованием LDAP, как объяснено в этом руководстве:

Как настроить клиент LDAP для подключения внешней аутентификации?

 

Для получения дополнительной информации посмотрите соответствующую документацию из каталога документов программного обеспечения OpenLDAP, а пользователи Ubuntu могут обратиться к руководству по серверу OpenLDAP.

Итог

OpenLDAP — это реализация LDAP с открытым исходным кодом в Linux. В этой статье мы показали, как установить и настроить сервер OpenLDAP для централизованной аутентификации, в Ubuntu 16.04/18.04 и CentOS 7.

 

 

Спасибо за уделенное время на прочтение статьи!

Если возникли вопросы, задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Ciscoкурсы по кибербезопасности,  полный курс по кибербезопасностикурсы DevNet (программируемые сети) от Академии Ciscoкурсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).

Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!

Спешите подать заявку! Группы стартуют 25 января, 26 февраля, 22 марта, 26 апреля, 24 мая, 21 июня, 26 июля, 23 августа, 20 сентября, 25 октября, 22 ноября, 20 декабря.
Что Вы получите?
  • Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
  • Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
  • Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
Как проходит обучение?
  • Проведем вечерние онлайн-лекции на нашей платформе.
  • Согласуем с вами удобное время для практик.
  • Если хотите индивидуальный график — обсудим и реализуем.
  • Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
  • Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
А еще поможем Вам:
  • отредактировать или создать с нуля резюме;
  • подготовиться к техническим интервью;
  • подготовиться к конкурсу на понравившуюся вакансию;
  • устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
Чтобы учиться на курсах Cisco, Linux LPI, кибербезопасность, DevOps / DevNet, Python, подайте заявку или получите бесплатную консультацию.

Рубрики:

LDAP, Linux, Security

Метки:

, , ,

Больше похожих постов

6 комментариев. Оставить новый

  • Кто подскажет, как запретить пользователям менять пароли.

    Ответить
  • При выполнении пункта 9 возникает ошибка
    ldapmodify: invalid format (line 5) entry: «olcDatabase={1}monitor,cn=config»
    https://prnt.sc/11w2q5i

    Ответить
    • В коде небольшая ошибка, строчка почему-то разделилась. Нужно строчку 6 перенести в конец пятой, должно полчиться так:

      olcAccess: {0}to * by dn.base=»gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth» read by dn.base=»cn=Manager,dc=example,dc=com» read by * none

      Ответить
  • Здравствуйте
    не работает 7 пункт
    на команду
    $ sudo cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG

    выдает сообщение
    cp: cannot stat ‘/usr/share/openldap-servers/DB_CONFIG.example’: No such file or directory

    DB_CONFIG.example сам создается или его надо создавать?

    Ответить
  • еще нет каталога openldap-servers/

    Ответить
  • Здравствуйте
    не работает 7 пункт
    на команду
    $ sudo cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG

    выдает сообщение
    cp: cannot stat ‘/usr/share/openldap-servers/DB_CONFIG.example’: No such file or directory

    DB_CONFIG.example сам создается или его надо создавать?

    еще нет каталога openldap-servers/

    Ответить

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Заполните поле
Заполните поле
Пожалуйста, введите корректный адрес email.
Вы должны согласиться с условиями для продолжения


Поиск по сайту
Лучшее
Популярное
Рубрики
Меню