// DevOps

Подключение Jitsi Meet к Active Directory: Полное руководство по настройке и отладке

Опубликовано 06.11.2025


Jitsi Meet — открытая платформа для видеоконференций, которая легко интегрируется с Active Directory (AD). Такая интеграция позволяет использовать корпоративные учётные записи для входа, упрощая администрирование и повышая безопасность. В этом руководстве мы подробно разберём, как подключить Jitsi Meet (в Docker) к AD на базе Windows Server 2016, и покажем проверенные методы отладки, которые помогут избежать типичных ошибок.

Важно: использование LDAP без шифрования небезопасно. Для тестирования это допустимо, но в продакшене обязательно нужно применять LDAPS (порт 636) с корректными сертификатами.


Подготовка Active Directory

Для интеграции нам понадобится отдельный bind-аккаунт, через который Prosody будет выполнять поиск пользователей и проверять пароли.

1. Создаём bind-аккаунт

  1. В консоли Active Directory Users and Computers создаём нового пользователя, например:

    • Name = bind
    • SamAccountName = binduser
  2. Устанавливаем надёжный пароль (например, "YourStrongPassword!") и снимаем флаг User must change password at next logon.

  3. В разделе Delegation выдаём права “Read all user information” для нужного OU.

2. Получаем DN пользователя

На контроллере домена выполняем команду PowerShell:

powershell
Get-ADUser -Identity "binduser" -Properties DistinguishedName

Пример вывода:

CN=bind,CN=Users,DC=example,DC=local

Это значение DistinguishedName мы используем при настройке Jitsi.

3. Ослабляем политику bind (для теста)

Если появляется ошибка Strong auth required, временно разрешаем более мягкий режим:

powershell
Set-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Services\NTDS\Parameters" -Name "LDAPServerIntegrity" -Value 1
Restart-Service NTDS -Force

Значение 1 включает режим “Negotiate signing”. После тестов важно вернуть 2 и перейти на LDAPS.


Настройка Jitsi Meet в Docker

В корне проекта docker-jitsi-meet редактируем файл .env, задавая параметры LDAP:

ENABLE_AUTH=1
AUTH_TYPE=ldap
LDAP_URL=ldap://your-dc.example.com:389/
LDAP_BASE=DC=example,DC=local
LDAP_BINDDN=CN=bind,CN=Users,DC=example,DC=local
LDAP_BINDPW=YourBindPassword
LDAP_FILTER=(sAMAccountName=%u)
LDAP_AUTH_METHOD=bind
LDAP_VERSION=3
LDAP_USE_TLS=0
LDAP_TLS_CHECK_PEER=0
ENABLE_GUESTS=0

Если хотим вход по адресу user@domain.local, меняем фильтр на:

LDAP_FILTER=(userPrincipalName=%u)

Настраиваем DNS через extra_hosts

Иногда контейнер prosody не видит контроллер домена, если Docker использует публичные DNS. Чтобы избежать этой проблемы, прописываем IP-адрес DC вручную через extra_hosts в docker-compose.yaml.

Пример секции:

yaml
services:
  prosody:
    image: jitsi/prosody:latest
    extra_hosts:
      - "your-dc.example.com:192.168.1.10"

После этого перезапускаем стек:

bash
docker compose down
docker compose up -d

Проверяем конфигурацию Prosody

Чтобы убедиться, что настройки применились, заходим в контейнер prosody и открываем файл:

bash
docker compose exec prosody bash
cat /etc/saslauthd.conf

Параметры должны совпадать с переменными из .env.


Тестирование и отладка

Перед запуском авторизации нужно убедиться, что LDAP и SASL работают корректно.

1. Устанавливаем инструменты

bash
apt-get update
apt-get install -y ldap-utils 

2. Проверяем bind-аккаунт

bash
ldapsearch -x -H ldap://your-dc.example.com:389 \
  -D "CN=bind,CN=Users,DC=example,DC=local" \
  -w 'YourBindPassword' \
  -b "DC=example,DC=local" "(sAMAccountName=user)"

Если команда возвращает запись пользователя — соединение установлено успешно.

3. Проверяем авторизацию пользователя

bash
testsaslauthd -u user -p 'UserPassword' -s xmpp -r meet.jitsi

Ожидаем результат:

0: OK "Success."

Проверяем вход через веб-интерфейс

После настройки открываем https://your-jitsi.com и входим под учётной записью из AD. Если всё сделано правильно, вход проходит успешно, и пользователь может создавать конференции.


Отладка и диагностика ошибок

Чтобы не тратить время на угадывание, проводим отладку последовательно.

Проверяем сетевое соединение и доступность AD

ПроверкаКомандаОжидаемый результатВозможная причина ошибки
Пинг DCping your-dc.example.comОтвет от DCПроблема с DNS — добавить extra_hosts.
Bind от binduserldapsearch ...Вывод объектов ADОшибка в DN или пароле.
Поиск пользователя(sAMAccountName=user)Найдена записьОшибка фильтра или OU.
Bind от пользователяldapsearch -x -H ... -D "user@example.local" -w 'Pass'SuccessОграничения LDAPServerIntegrity.

Просматриваем логи Prosody

bash
docker compose logs prosody | grep -i "auth\|ldap\|failure"

Для более детальной диагностики включаем отладочный режим saslauthd:

bash
killall saslauthd
saslauthd -d -a ldap -O /etc/saslauthd.conf -n 5

Затем выполняем проверку:

bash
testsaslauthd -u user -p 'Password' -s xmpp -r meet.jitsi

Типичные ошибки:

  • Unknown — неверный DN или фильтр.
  • Invalid credentials — ошибка в пароле binduser.
  • Bind failed — TLS-проблема или политика безопасности AD.

Проверяем состояние в Active Directory

На контроллере домена можно проверить состояние учётной записи:

powershell
Get-ADUser user -Properties LockedOut, BadLogonCount, DistinguishedName
Unlock-ADAccount -Identity user

Неудачные попытки входа отображаются в Event Viewer → Windows Logs → Security (события 4625). Если таких записей нет, значит Jitsi не может подключиться к AD.


Частые проблемы и их решения

ОшибкаПричинаРешение
authentication failedНеверный пароль пользователяСбросить пароль в AD.
UnknownНеверный DN или фильтрПроверить DN через Get-ADUser.
Strong auth requiredСтрогая политика ADДля теста установить LDAPServerIntegrity=1, для продакшена — использовать LDAPS.
User not foundОшибка фильтраДля AD использовать (sAMAccountName=%u).
Ошибка TLSОтсутствует сертификатНастроить LDAPS и добавить доверенный сертификат.

Заключение

Интеграция Jitsi Meet с Active Directory делает систему аутентификации централизованной, безопасной и удобной. Главное — корректно указать DN и фильтры LDAP, а также тщательно проверить соединение с помощью ldapsearch и testsaslauthd. После успешной настройки важно включить LDAPS и вернуть строгие политики безопасности на контроллере домена.

// Reviews

Отзывы по теме

Опыт сотрудничества оставил максимально позитивное впечатление, в первую очередь профессионализмом и подходом к решению возникающих проблем.

Опыт сотрудничества оставил максимально позитивное впечатление, в первую очередь профессионализмом и подходом к решению возникающих проблем.

mendarinno384

Jitsi meet: персональный zoom, настройка jitsi meet в docker и на VPS

11.11.2025 · ★ 5/5

Была задача наладить работу n8n, redis и базы данных. Заказывал раньше у другого исполнителя, постоянно все ломалось. Заказал у Михаила, на следующий же день все стало работать быстро, как часы!

Была задача наладить работу n8n, redis и базы данных. Заказывал раньше у другого исполнителя, постоянно все ломалось. Заказал у Михаила, на следующий же день все стало работать быстро, как часы!

christ_media

N8n установка на ваш vps сервер. Настройка n8n, docker, ai, telegram

24.09.2025 · ★ 5/5

Опытный покупатель

ladohinpy

N8n установка на ваш vps сервер. Настройка n8n, docker, ai, telegram

25.08.2025 · ★ 5/5

Михаил выполнил настройку очередного VPS. Быстро, профессионально обходя определенные ограничение хостинг провайдеров.

Михаил выполнил настройку очередного VPS. Быстро, профессионально обходя определенные ограничение хостинг провайдеров.

NadoBy

NadoBy

N8n установка на ваш vps сервер. Настройка n8n, docker, ai, telegram

12.08.2025 · ★ 5/5

Освоившийся покупатель

// Contact

Нужна помощь?

Свяжись со мной и я помогу решить проблему

Написать в Telegram

Отвечаю в течение рабочего дня (03:00–13:00 GMT)

Или оставьте заявку здесь:

Отправить заявку
Написать и получить быстрый ответ