LDAP, Kerberos и каталог
LSUS интегрируется с корпоративными каталогами — Microsoft Active Directory, FreeIPA, РЕД АДМ (Samba DC) и ALD Pro — для синхронизации пользователей, компьютеров и организационных единиц. Это позволяет видеть весь парк машин (включая те, где агент ещё не установлен), управлять доступом администраторов через доменные учётки и использовать SSO через Kerberos.
Поддерживаемые каталоги¶
| Тип каталога | Что поддерживается | Особенности |
|---|---|---|
| MS Active Directory / РЕД АДМ | Пользователи, компьютеры, OU, группы | Стандартные атрибуты AD (sAMAccountName, operatingSystem) |
| FreeIPA | Пользователи, компьютеры, группы хостов/пользователей | Атрибуты 389 DS (krbPrincipalName, nsOsVersion) |
| ALD Pro | Всё вышеперечисленное + OU-подразделения | Своя структура OU (cn=orgunits), атрибут rbtadp для реального пути |
ALD Pro
ALD Pro — это FreeIPA с расширенной моделью организационных единиц. LSUS автоматически определяет тип каталога и использует правильные пути поиска: для ALD Pro — cn=orgunits,cn=accounts,<base_dn> вместо стандартных organizationalUnit. Реальный OU-путь хоста или пользователя определяется по атрибуту rbtadp.
Настройка источника LDAP¶
Администрирование → Настройки → LDAP

Создание источника¶
- Нажмите «Добавить источник».
- Заполните параметры подключения:
| Параметр | Описание | Пример |
|---|---|---|
| Имя | Произвольное имя источника | «Домен CORP» |
| Тип каталога | AD / РЕД АДМ / FreeIPA / ALD Pro | ALD Pro |
| Primary URL | Адрес контроллера домена | ldap://dc1.corp.loc:389 или ldaps://dc1:636 |
| Backup URL | Резервный контроллер (опц.) | ldap://dc2.corp.loc:389 |
| Base DN | Корневой DN домена | dc=corp,dc=loc |
| Bind DN | Учётка для чтения каталога | cn=lsus-sync,cn=users,cn=accounts,dc=corp,dc=loc |
| Пароль | Пароль bind-учётки | — |
-
При необходимости — настройте маппинг атрибутов (ФИО, Email, Подразделение, Должность). По умолчанию:
- AD:cn,mail,department,title
- FreeIPA/ALD Pro:cn,mail,ou(вместо department),title -
Настройте фильтрацию объектов (опционально) — какие OU и группы синхронизировать, а какие исключить. См. подробности в «Условия включения и исключения» ниже.
-
Задайте интервал синхронизации (по умолчанию 60 минут) и размер страницы LDAP (по умолчанию 1000, для больших каталогов — больше).
-
Нажмите «Проверить» — LSUS подключится к каталогу и покажет количество найденных пользователей/компьютеров.
-
«Сохранить» — источник создастся, первая синхронизация запустится автоматически.
Для ALD Pro
- Bind DN обычно:
uid=lsus-sync,cn=users,cn=accounts,dc=ald,dc=domain,dc=loc - Base DN:
dc=ald,dc=domain,dc=loc - Если используется LDAPS или STARTTLS — включите проверку сертификата сервера и добавьте CA-сертификат ALD Pro в настройках TLS.
Рекомендуем завести отдельную сервисную учётную запись только для чтения каталога (например lsus-sync) и использовать её в качестве Bind DN. Не используйте для синхронизации учётные записи администраторов домена — так подключение получает минимально необходимые права и не создаёт лишних рисков. Как создать такую учётку и настроить права в ALD Pro, описано в руководстве по интеграции с каталогами ALD Pro.
Безопасность подключения (TLS)¶
При использовании LDAPS (ldaps://) или STARTTLS канал шифруется всегда. По умолчанию сертификат сервера не проверяется (как у большинства LDAP-клиентов) — это нормально для внутренних CA, но создаёт теоретический риск MITM. Для повышения безопасности включите проверку.
В форме источника нажмите кнопку «TLS: проверка …» — откроется окно «Безопасность подключения (TLS)»:

| Элемент | Назначение |
|---|---|
| Проверять сертификат сервера (TLS) | Чекбокс: включить проверку по CERT_REQUIRED. Выкл (по умолчанию) — шифрование без проверки. |
| Доверенные CA (цепочка) | Список сертификатов из раздела «Сертификаты» (каталог Каталог и политики → Сертификаты). Отметьте корневой и промежуточные CA, которыми подписан сертификат сервера. |
| Или путь к PEM на сервере | Альтернатива: путь к PEM-файлу с CA на файловой системе сервера (например /app/data/certs/ca.pem). |
| Загрузить сертификат (PEM/DER) | Загрузить CA-сертификат с рабочего станции администратора — он попадёт в «Сертификаты» и автоматически отметится как доверенный. |
| Получить цепочку с сервера | Подключиться к серверу и снять его цепочку сертификатов (openssl s_client), затем импортировать нужные (корневые + промежуточные). Доступно для уже сохранённого источника. |
Рекомендуемый порядок для ALD Pro / FreeIPA
- Укажите
ldaps://dc.ald.domain.loc:636в Primary URL. - Нажмите «Получить цепочку с сервера» — LSUS снимет сертификаты контроллера.
- Отметьте корневой и промежуточные CA → «Импортировать отмеченные».
- Включите «Проверять сертификат сервера (TLS)».
- Нажмите «Проверить» — если подключение успешно, сертификат валиден.
Поведение проверки
- Проверка выключена (по умолчанию): соединение шифруется, сертификат не проверяется. В логе — предупреждение при каждом подключении.
- Проверка включена + выбраны CA: сертификат сервера сверяется с выбранными «Сертификатами» (корневой + промежуточные).
- Проверка включена, CA не выбраны, путь не задан: используется системное хранилище сертификатов сервера LSUS.
Условия включения и исключения¶
В форме редактирования источника условия фильтрации и TLS вынесены в отдельные поддмодалки, которые открываются кнопками-«таблетками»:
Условия включения (логика ИЛИ) — какие OU и группы синхронизировать:

Условия исключения — какие OU и группы вырезать из синхронизации (с красной рамкой):

| Кнопка | Что открывает |
|---|---|
| Условия включения (N) (зелёная) | Список правил включения — какие OU и группы синхронизировать |
| Условия исключения (N) (красная) | Список правил исключения — какие OU и группы вырезать из синхронизации |
| TLS: проверка … (синяя) | Настройки TLS |
Число в скобках показывает количество правил в каждом списке.
Логика списков:
| Список | Логика | Что делает |
|---|---|---|
| Условия включения (логика ИЛИ) | объект подходит, если совпадает хоть с одним правилом | Определяет, какие OU и группы попадают в синхронизацию |
| Условия исключения | объект отбрасывается, если совпадает хоть с одним правилом | Вырезает конкретные OU/группы, даже если они подходят под включение |
Как добавить правило: нажмите «Добавить условие» в поддмодалке. Каждое правило — строка таблицы с тремя колонками:
| Колонка | Что содержит |
|---|---|
| Тип условия | Выбор: «Поддерево (OU / база DN)» или «Группа (memberOf)» |
| DN поддерева или группы | Поле ввода DN (например ou=staff,dc=corp,dc=loc) |
| Действия | Обзор (выбор DN из каталога), Предпросмотр (сколько объектов попадёт), Удалить |
| Тип условия | Что делает |
|---|---|
| Поддерево (OU / DN) | синхронизирует (или исключает) всё содержимое указанного OU вместе с вложенными подразделениями |
| Группа (memberOf) | синхронизирует (или исключает) членов указанной группы |
Единый список для пользователей и компьютеров
Списки включения и исключения общие для пользователей и компьютеров — тип объекта определяется автоматически по содержимому OU/группы. Одно правило «поддерево ou=staff» подтянет и пользователей, и компьютеры из этого OU.
Обзор и Предпросмотр
- Обзор — открывает каталог LDAP (OU и группы) для выбора DN мышью. Доступен только для уже сохранённого источника: создайте источник, сохраните, затем откройте «Редактировать» снова.
- Предпросмотр — показывает, сколько пользователей и компьютеров попадёт под правило (или будет исключено), до применения. Для исключений заголовок — «Предпросмотр: будет исключено».
Важно:
- Если список включения пуст — данные из источника не подгружаются в кэш. Чтобы синхронизировать «всё кроме...», добавьте правило включения на корень домена (Base DN) и перечислите исключения.
- Исключение приоритетнее включения: объект, попавший в любое условие-исключение, не синхронизируется, даже если подходит под условие включения.
- В ALD Pro / FreeIPA правило «поддерево» на OU из
cn=orgunitsдополнительно сопоставляется по атрибутуrbtadp(аккаунты физически лежат подcn=users/cn=computers). - При изменении условий уже синхронизированные объекты, переставшие подходить, переводятся в состояние
orphaned(tombstone) и перестают учитываться в коллекциях.
Глобальные параметры¶
На странице LDAP-настроек также доступны:
| Параметр | Описание |
|---|---|
| Глобальный интервал синхронизации | Если задан (≠ 0) — переопределяет интервал всех источников |
| Автопересчёт коллекций | Пороги массового пересчёта после синхронизации (threshold/ratio/limit) |
Синхронизация с каталогом¶
Что синхронизируется¶
| Объект | Куда попадает | Что хранится |
|---|---|---|
| Компьютеры | Дерево «Каталог и политики» + кэш host_ldap_cache |
hostname, FQDN, DN, OU-путь, ОС, группы |
| Пользователи | Кэш user_ldap_cache + дерево |
Логин, UPN, ФИО, email, подразделение, OU-путь |
| OU (подразделения) | Узлы дерева ldap_ou |
Имя, DN, иерархия, членство |
| Группы | Узлы дерева ldap_group |
Имя, DN, тип (хосты/пользователи), члены |
Как часто¶
Синхронизация запускается автоматически по интервалу (по умолчанию 60 минут). Можно запустить вручную — кнопка «Синхронизировать» в настройках источника или в шапке дерева «Каталог и политики».
Tombstone (исчезнувшие объекты)¶
При синхронизации объекты, удалённые из каталога, не пропадают мгновенно:
| Состояние | Что значит |
|---|---|
| active | Объект присутствует в каталоге |
| missing | Исчез, политик не привязано — будет удалён через N дней |
| orphaned | Исчез, но есть привязанные политики — помечается для ручного разбора |
Период хранения настраивается в Каталог и политики → корень домена → Параметры: поле «Удалять tombstone через (дней)» (по умолчанию 30). Кнопка «Запустить очистку сейчас» — немедленное удаление.
Отображение в дереве «Каталог и политики»¶

После синхронизации LDAP в дереве появляется структура домена:
- Корень домена (
domain_root) — корневой узел с полным деревом OU и групп. - OU (
ldap_ou) — организационные единицы, как в самом каталоге. Для ALD Pro — изcn=orgunits. - Группы (
ldap_group) — группы хостов и пользователей внутри своих OU.
Компьютеры¶

В подвкладке «Компьютеры» видны все машины из каталога:
- Хосты с установленным агентом LSUS — полный статус, heartbeat, ОС, обновления.
- Хосты без агента (LDAP-only) — помечены оранжевым бейджем «нет агента». Отображается информация из каталога (DN, OU, ОС). Действия (обновление, проверки) недоступны до установки агента.
Пользователи¶

В подвкладке «Пользователи» — доменные учётки, входящие в выбранный узел (прямо и через группы). Видно: ФИО, email, подразделение, должность.
Синхронизация дерева¶
Кнопка «Синхронизировать» (🔄) в шапке дерева запускает:
1. Перестроение встроенных категорий (по ОС).
2. Пересчёт счётчиков членов для каждого узла.
3. Обновление статусов tombstone.
Сама LDAP-синхронизация (загрузка данных из каталога) выполняется по расписанию или вручную из настроек LDAP.
Kerberos / SPNEGO¶
Администрирование → Настройки → Kerberos

Kerberos SSO позволяет администраторам входить в LSUS без ввода пароля — через доменную аутентификацию. Машина администратора должна быть членом домена, и браузер должен поддерживать SPNEGO.
Настройка¶
- Создать service principal для LSUS-сервера в каталоге:
Для FreeIPA / ALD Pro:
ipa service-add HTTP/lsus-master.corp.loc@CORP.LOC
ipa-getkeytab -s dc1.corp.loc -p HTTP/lsus-master.corp.loc@CORP.LOC -k /tmp/lsus-server.keytab
Для AD:
# На Windows DC:
ktpass -princ HTTP/lsus-master.corp.loc@CORP.LOC -mapuser lsus-svc -pass * -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -out C:\lsus-server.keytab
# Или через Samba:
net ads keytab add HTTP -k /tmp/lsus-server.keytab
- Загрузить keytab в LSUS: в настройках Kerberos выберите файл и нажмите «Сохранить».
- (Рекомендуется) Положите
krb5.confрядом с keytab на сервере — путь сохраняется в настройках, и файл применяется при проверке тикета. Это важно для доменов, где FQDN сервера «уводит» realm при hostbased-канонизации SPN: без своегоkrb5.confпроверка SPNEGO может определить realm неверно. Поддерживаемые расположения: каталог рядом с keytab,KRB5_CONFIGили/app/data/kerberos/krb5.conf. - Проверить — нажмите «Проверить keytab»: LSUS покажет список SPN и статус GSSAPI.
- Включить — установите чекбокс «Kerberos-аутентификация включена» и сохраните.
- Перезапустите сервис LSUS.
- Выберите «Как записать логин при первом входе» — полный (
user@domain) или короткий (только имя). От этого зависит вид учётки, создаваемой при первом SSO-входе; существующие учётки находятся по обоим форматам.
Принцип работы
При входе браузер отправляет Kerberos-тикет (SPNEGO-токен). LSUS проверяет тикет через keytab, извлекает principal (user@REALM) и ищет учётку по UPN и короткому имени без учёта регистра.
Учётка создаётся на первом SSO только если этому пользователю каталога уже назначена отложенная роль (карточка роли → пользователи из каталога). Глобальное автосоздание для любого LDAP-пользователя — отдельно, флаг KERBEROS_AUTO_CREATE_USER=1.
Как записывать логин при первом SSO (полный user@domain или короткий — только имя) задаётся в настройках Kerberos. На поиск существующих записей формат не влияет.
Кнопка «Отключить без ролей» отключает доменные учётки (LDAP и Kerberos) без прямых, отложенных и коллекционных ролей после успешной синхронизации LDAP. Если каталог недоступен или у роли не загрузилась коллекция, операция не выполняется.
Требования¶
- Сервер доступен по FQDN, совпадающему с SPN в keytab.
- На машине администратора — браузер с поддержкой SPNEGO (Chrome, Firefox, Edge).
Привязка политик к LDAP-узлам¶
Политики назначаются на узлы LDAP-дерева точно так же, как на коллекции:
- Выберите OU или группу в дереве.
- В подвкладке «Политики» нажмите «Назначить политику».
- Выберите профиль и режим (
audit/enforce).
Политики применяются ко всем хостам внутри выбранного OU/группы, у которых установлен агент LSUS. LDAP-only хосты (без агента) видны, но политики на них не выполняются.
Приоритет политик
Чем ближе узел к хосту (глубже в дереве), тем выше приоритет. Политика на OU «Серверы» перекрывает политику на корне домена. При равной глубине — меньше link_order = выше приоритет.
Связанные страницы¶
- Каталог и политики — структура дерева, коллекции.
- Управление конфигурациями — политики, раскатки, назначения.
- Управление доступом — роли, RBAC, LDAP-пользователи.
- Администрирование — где находятся настройки.