Поиск по сайту:

Как добавить систему Rocky Linux на сервер OpenLDAP


На этой странице

  1. Предпосылки
  2. Проверка пользователей OpenLDAP
  3. Настройка файла Hosts и полного доменного имени
  4. Установка клиента OpenLDAP и пакетов SSSD
  5. Изменение профиля аутентификации на SSSD
  6. Настройка клиента OpenLDAP и служб SSSD
  7. Тестирование
  8. Заключение

После завершения установки OpenLDAP вам также потребуется добавить клиентский компьютер для аутентификации на вашем сервере OpenLDAP.

Есть много способов добавить клиентскую машину на сервер OpenLDAP, один из них — использование службы SSSD. Служба SSSD доступна практически в репозиториях дистрибутивов Linux (с другим именем пакета), что упрощает администрирование и ускоряет подготовку клиентских машин OpenLDAP.

В этом руководстве вы узнаете, как настроить и добавить систему Rocky Linux на сервер OpenLDAP с помощью службы SSSD.

Предпосылки

  • Сервер с OpenLDAP установлен и настроен.
  • Клиент Rocky Linux. В этом примере используется Rocky Linux 8.5.
  • Пользователь без полномочий root с настроенными привилегиями root.

Проверка пользователей OpenLDAP

Сначала вы будете проверять список доступных пользователей на сервере OpenLDAP. Поэтому обязательно выполните следующую команду на вашем сервере OpenLDAP.

В этом примере сервер OpenLDAP работает под доменным именем ldap.mydomain.io.

Проверьте список доступных пользователей в OpenLDAP с помощью приведенной ниже команды ldapsearch.

sudo ldapsearch -x -b "ou=people,dc=mydomain,dc=io"

Теперь вы должны увидеть список пользователей на сервере OpenLDAP. На приведенном ниже снимке экрана показан пользователь OpenLDAP с именем john, который будет использоваться для тестирования.

Настройка файла Hosts и полного доменного имени

Перед установкой каких-либо пакетов вы настроите FQDN (полное доменное имя) машины Rocky Linux и настроите файл /etc/hosts для определения домена сервера OpenLDAP.

В этом примере ldap.mydomain.io работает с IP-адресом 192.168.10.50. И клиент Rocky Linux работает с IP-адресом 192.168.10.80.

Выполните приведенную ниже команду hostnamectl, чтобы настроить полное доменное имя Rocky Linux на RockyLinux.mydomain.io.

sudo hostnamectl set-hostname RockyLinux.mydomain.io

Теперь отредактируйте конфигурацию /etc/hosts с помощью редактора nano.

sudo nano /etc/hosts

Добавьте доменное имя и IP-адрес сервера OpenLDAP, а затем сведения о клиенте Rocky Linux, как показано ниже.

192.168.10.50 ldap.mydomain.io ldap
192.168.10.80 RockyLinux.mydomain.io RockyLinux

Сохраните и закройте файл, когда закончите.

Затем выполните следующую команду, чтобы проверить полное доменное имя системы Rocky Linux и проверить соединение между системой Rocky Linux и сервером OpenLDAP.

sudo hostname -f
sudo ping -c3 ldap.mydomain.io

Вы должны получить вывод, как на скриншоте ниже. Полное доменное имя системы Rocky Linux — RockyLinux.mydomain.io, и соединение с сервером OpenLDAP установлено успешно.

Установка клиента OpenLDAP и пакетов SSSD

После того, как вы настроили файл FQDN и Hosts в системе Rocky Linux. Теперь вам нужно установить клиент OpenLDAP и SSSD на машину Rocky Linux.

Клиент OpenLDAP должен быть установлен на клиентском компьютере, а служба SSSD будет обрабатывать всю аутентификацию на сервере OpenLDAP.

SSSD или демон службы безопасности системы часто используется для регистрации машин Linux на сервере IPA, Active Directory и домене LDAP.

Выполните приведенную ниже команду dnf, чтобы установить клиентский пакет OpenLDAP, сервисный пакет SSSD с дополнительной поддержкой LDAP и пакетodjob-mkhomedir для автоматического создания домашнего каталога для пользователей OpenLDAP.

sudo dnf -y install openldap-clients sssd sssd-ldap oddjob-mkhomedir

Дождитесь завершения установки всех пакетов.

Изменение профиля аутентификации на SSSD

После того, как вы установили клиентские пакеты OpenLDAP и пакеты SSSD, вы теперь настроите системную аутентификацию и источник идентификации для службы SSSD.

Это можно сделать с помощью команды authselect, которая упрощает администраторам управление аутентификацией и источником идентификации по умолчанию для систем на основе RHEL, включая Rocky Linux.

Выполните приведенную ниже команду authselect, чтобы получить список доступных профилей аутентификации и идентификации.

authselect list

Вы должны увидеть несколько источников аутентификации и идентификации, таких как NIS, SSSD и Winbind.

Измените профиль аутентификации и идентификации по умолчанию на sssd с помощью приведенной ниже команды authselect. Кроме того, параметр with-mkhomedir необходим для автоматической настройки создания домашнего каталога для всех пользователей.

authselect select sssd with-mkhomedir --force

Теперь вы должны получить вывод, как на скриншоте ниже. Профиль аутентификации sssd выбран в качестве профиля по умолчанию на вашем компьютере с Rocky Linux.

Кроме того, вам потребуется запустить и включить службу oddjobd с помощью приведенной ниже команды.

sudo systemctl enable --now oddjobd.service

Теперь проверьте службу oddjobd, чтобы убедиться, что она работает.

sudo systemctl status oddjobd.service

Вы должны увидеть результат, как на скриншоте ниже.

Настройка клиента OpenLDAP и служб SSSD

Теперь пришло время настроить клиент OpenLDAP и настроить службу SSSD.

Отредактируйте конфигурацию клиента OpenLDAP /etc/openldap/ldap.conf с помощью редактора nano.

sudo nano /etc/openldap/ldap.conf

Определите сервер OpenLDAP и имя базового поискового домена. Обязательно измените доменное имя на свой домен.

URI ldap://ldap.mydomain.io/
BASE dc=mydomain,dc=io

Сохраните и закройте файл, когда закончите.

Затем создайте новую конфигурацию службы SSSD /etc/sssd/sssd.conf с помощью редактора nano.

sudo nano /etc/sssd/sssd.conf

Скопируйте следующую конфигурацию и обязательно измените ldap_uri и ldap_search_base на свой сервер OpenLDAP. Затем вставьте конфигурацию.

[domain/default]
id_provider = ldap
autofs_provider = ldap
auth_provider = ldap
chpass_provider = ldap
ldap_uri = ldap://ldap.mydomain.io/
ldap_search_base = dc=mydomain,dc=io
ldap_id_use_start_tls = True
ldap_tls_cacertdir = /etc/openldap/certs
cache_credentials = True
ldap_tls_reqcert = allow

[sssd]
services = nss, pam, autofs
domains = default

[nss]
homedir_substring = /home

Сохраните и закройте файл.

Теперь измените разрешение конфигурации службы SSSD на 0600. Это защитит конфигурацию и сделает ее доступной только для владельца.

sudo chmod 0600 /etc/sssd/sssd.conf

Наконец, перезапустите и проверьте, чтобы служба SSSD применила новую конфигурацию с помощью приведенной ниже команды systemctl.

sudo systemctl restart sssd
sudo systemctl status sssd

Вы должны увидеть, что текущий статус службы SSSD активен (работает).

Тестирование

На этом этапе вы добавили компьютер Rocky Linux на сервер OpenLDAP с помощью службы SSSD. Теперь давайте проверим нашу конфигурацию.

В этом примере мы проверим установку, войдя в клиентскую машину Rocky Linux под пользователем OpenLDAP john.

В приведенном ниже примере были зарегистрированы на клиентской машине Rocky Linux с пользователем john. Вы можете видеть, что заданный номер uid и gid совпадает с пользователем john на сервере OpenLDAP.

При желании вы также можете попытаться войти на клиентский компьютер Rocky Linux через соединение SSH, но по-прежнему используя пользователя OpenLDAP.

Ниже пользователь john успешно подключен к машине Rocky Linux через SSH-соединение.

ssh 

Заключение

Поздравляем! Теперь вы успешно добавили клиентский компьютер Rocky Linux на сервер OpenLDAP через службу SSSD. Это руководство также можно применять к общим дистрибутивам на основе RHEL, таким как CentOS, AlmaLinux и Fedora.