Настройка защищенного подключения по протоколу LDAPS в кластере Avanpost DS включает два этапа:
1. Настройка контроллеров домена (КД)
Для настройки подключения по протоколу LDAPS в кластере Avanpost DS на каждом КД необходимо выполнить шаги:
Шаг 1.1. В корпоративном центре сертификации выпустить закрытый и открытый ключ под каждый КД (.key, .crt).
Шаг 1.2. На КД создать каталог "/opt/avanpost/ads/cert" и загрузить туда файлы сертификатов.
Для этого необходимо выполнить команду:
mkdir /opt/avanpost/ads/cert
Шаг 1.3. Предоставить права на директорию для пользователя "ads".
Для этого необходимо выполнить команду:
chown -R ads:ads /opt/avanpost/ads/
Шаг 1.4. Остановить сервис "ads".
Для этого необходимо выполнить команду:
sudo systemctl stop ads
Шаг 1.5. Добавить в файл конфигурации Avanpost DS "/opt/avanpost/ads/config/config.yaml" пути к сертификату и его закрытому ключу.
Для этого необходимо:
1.5.1 Открыть для редактирования "/opt/avanpost/ads/config/config.yaml".
nano /opt/avanpost/ads/config/config.yaml
1.5.2 Заполнить файл по шаблону:
ldaps: port: 636 host: 0.0.0.0 cert: "/opt/avanpost/ads/cert/[FQDN].crt" key: "/opt/avanpost/ads/cert/[FQDN].key"
Заменить [FQDN] на FQDN контроллера домена.
ldaps: port: 636 host: 0.0.0.0 cert: "/opt/avanpost/ads/cert/ds01.avanpost.local.crt" key: "/opt/avanpost/ads/cert/ds01.avanpost.local.key"
Шаг 1.6. Запустить сервис "ads".
Для этого необходимо выполнить команду:
sudo systemctl start ads
Шаг 1.7. Проверить подключение по LDAPS (требуется утилита ldapsearch). Для выполнить команду по шаблону, подставив свои данные:
LDAPTLS_REQCERT=allow ldapsearch -H ldaps://[Hostname КД]:636 -x -W -D "cn=[Логин администратора],ou=[Подразделение],dc=[Домен2ур],dc=[Домен1ур]" -b "ou=[Подразделение],dc=[Домен2ур],dc=[Домен1ур]"
Заменить [Hostname КД] на FQDN адрес контроллера домена;
Заменить [Логин администратора] на логин администратора Avanpost DS;
Заменить [Подразделение] на название подразделения, в котором состоит администратор;
Заменить [Домен1ур] на свой домен первого уровня, а [Домен2ур] — на свой домен второго уровня.
LDAPTLS_REQCERT=allow ldapsearch -H ldaps://ds01.avanpost.local:636 -x -W -D "cn=Administrator,ou=users,dc=avanpost,dc=local" -b "ou=users,dc=avanpost,dc=local"
Шаг 1.8. В веб-интерфейсе администратора Avanpost DS добавить SRV записи для каждого КД в корень домена и в каждый поддомен (default и т.д).
Как зайти в веб-интерфейс администратора Avanpost DS см. Руководство по Администрированию Avanpost DS
Для добавления SRV записи необходимо:
1.8.1. В разделе "DNS" нажать в строке нужной зоны → "Добавить запись SRV" (Рисунок 95)
Рисунок 95. Добавление SRV записи
1.8.2. Заполнить необходимые поля в форме и нажать (Рисунок 96):
- Служба: _ldaps
- Протокол: _tcp
- Порт: 636
- Хост: ds01.avanpost.local (FQDN адрес КД)
Рисунок 96. Добавление SRV записи
2. Настройка рабочих станций
На рабочих станциях требуется настроить SSSD для работы с LDAPS. Для этого необходимо выполнить шаги:
Шаг 2.1. С рабочей станции проверить наличие SRV записей в DNS.
Для этого необходимо выполнить команду:
dig srv _ldaps._tcp.avanpost.local | grep 636
# вывод содержит в себе SRV записи всех КД c портом 636 _ldaps._tcp.avanpost.local. 870 IN SRV 0 0 636 ds01.avanpost.local.
Шаг 2.2. Отредактировать конфигурационный файл "/etc/sssd/sssd.conf".
nano /etc/sssd/sssd.conf
- Заменить значение параметра "ldap_id_use_start_tls = False" на "True".
- Добавить строки в раздел [domain/ВАШ.ДОМЕН]:
ldap_tls_reqcert = allow ldap_dns_service_name = ldaps
[sssd] config_file_version = 2 reconnection_retries = 3 services = nss, pam, sudo domains = AVANPOST.LOCAL [nss] filter_groups = root filter_users = root reconnection_retries = 3 memcache_timeout = 5 [pam] reconnection_retries = 3 [sudo] [domain/AVANPOST.LOCAL] entry_cache_timeout = 5 ldap_user_name = cn debug_level = 9 cache_credentials = False id_provider = ldap auth_provider = krb5 chpass_provider = krb5 access_provider = simple dns_discovery_domain = default.avanpost.local ldap_uri = _srv_ ldap_schema = rfc2307bis ldap_referrals = False ldap_sudo_search_base = ou=sudoers,dc=system ldap_sudo_full_refresh_interval=86400 ldap_sudo_smart_refresh_interval=3600 ldap_search_base = dc=avanpost,dc=local ldap_user_search_base = dc=avanpost,dc=local ldap_user_object_class = krbPrincipal ldap_search_timeout = 60 ldap_network_timeout = 60 ldap_opt_timeout = 60 ldap_access_filter = (host=ALL) ldap_force_upper_case_realm = True ldap_dns_service_name = ldaps # Обязательно для LDAPS, по умолчанию: ldap ldap_tls_reqcert = allow # Обязательно для LDAPS ldap_id_use_start_tls = True # Обязательно для LDAPS, по умолчанию: false ldap_sasl_mech = GSSAPI ldap_sasl_authid = host/client-redos.avanpost.local@AVANPOST.LOCAL krb5_realm = AVANPOST.LOCAL krb5_canonicalize = False krb5_server = _srv_ krb5_kpasswd = _srv_
Шаг 2.3. Очистить кэш "sssd".
Для этого необходимо выполнить команду:
sudo sss_cache -E
Шаг 2.4. Перезапустить службу "sssd".
Для этого необходимо выполнить команду:
sudo systemctl restart sssd
Шаг 2.5. Для проверки завершить сессию на рабочей станции и авторизоваться заново под доменной учетной записью.


