Разворачиваем Jitsi Meeting с LDAP авторизацией

Развёртывание Jitsi Meeting с LDAP Администрирование
Jitsi Meeting - это открытое ПО для проведения безопасных видеоконференций.

Jitsi Meeting — это открытое программное обеспечение для проведения безопасных видеоконференций, которое вы можете развернуть на своем собственном сервере. В этом руководстве мы рассмотрим, как развернуть Jitsi Meet на Ubuntu 18.04.

Требования

  • Сервер Ubuntu 18.04;
  • Доменное имя и доступ к управлению зонами DNS;
  • Установленный и настроенный сервер Nginx;
  • Установленный и настроенный Certbot (для SSL-сертификатов Let’s Encrypt).

Выполнение требований к записям DNS

Создайте следующие записи:

 1. A запись: 
meet.your_domain.ru -> IP-адрес сервера, на котором установлен Jitsi Meet

2. SRV запись:
_xmpp-client._tcp.meet.your_domain.ru -> 5 0 5222 meet.your_domain.ru

3. SRV запись:
_xmpp-server._tcp.meet.your_domain.ru -> 5 0 5269 meet.your_domain.ru

4. SRV запись:
_turn._udp.meet.your_domain.ru -> 0 0 3478 meet.your_domain.ru

5. TXT запись:
_turn._udp.meet.your_domain.ru -> "v=1; u=username:password"

6. A запись:
auth.meet.your_domain.ru -> IP-адрес сервера, на котором запущен Prosody XMPP-сервер

7. A запись:
internal-muc.meet.your_domain.ru -> IP-адрес сервера, на котором установлен Jitsi Meet

8. A запись:
muc.meet.your_domain.ru -> IP-адрес сервера, на котором установлен Jitsi Meet

9. A запись:
jitsi-videobridge.meet.your_domain.ru -> IP-адрес сервера, на котором Jitsi Video BridgeCode language: JavaScript (javascript)

Шаг 1: Установка Jitsi Meeting

  1. Добавьте репозиторий Jitsi в список источников APT:
echo 'deb https://download.jitsi.org stable/' >> /etc/apt/sources.list.d/jitsi-stable.listCode language: Bash (bash)
  1. Добавьте ключ GPG Jitsi в свой менеджер пакетов:
wget -qO -  https://download.jitsi.org/jitsi-key.gpg.key | sudo apt-key add -Code language: Bash (bash)
  1. Обновите список пакетов:
sudo apt-get updateCode language: Bash (bash)
  1. Установите пакет jitsi-meet:
sudo apt-get -y install jitsi-meetCode language: Bash (bash)

Во время установки вас попросят ввести доменное имя вашего сервера. Введите его и продолжите установку.

Шаг 2: Настройка SSL

Jitsi Meet требует наличия SSL-сертификата для работы. Если у вас уже есть SSL-сертификат, вы можете пропустить этот шаг. Если нет, вы можете использовать Certbot для получения бесплатного SSL-сертификата от Let’s Encrypt.

  1. Установите Certbot:
sudo apt-get install certbotCode language: Bash (bash)
  1. Получите SSL-сертификат:
sudo certbot certonly --standalone --pre-hook "systemctl stop nginx" --post-hook "systemctl start nginx" -d your_domain.ruCode language: Bash (bash)

Замените your-domain.com на ваше доменное имя.

  1. Настройте Jitsi Meet для использования вашего нового SSL-сертификата:
/usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh

Этот скрипт автоматически настроит Jitsi Meet на использование вашего SSL-сертификата.

Шаг 3: Настройка аутентификации

По умолчанию, в Jitsi Meet любой может создать новую конференцию. Если вы хотите ограничить это только авторизованными пользователями, вы можете включить аутентификацию.

  1. Установите пакет prosody.
  2. Откройте файл конфигурации Prosody для вашего домена:
sudo nano /etc/prosody/conf.avail/your_-_domain.cfg.luaCode language: Bash (bash)

Замените your_domain на ваше доменное имя.

  1. Найдите следующую строку:
authentication = "anonymous"Code language: JavaScript (javascript)

и замените ее на:

authentication = "cyrus"Code language: JavaScript (javascript)
  1. Добавьте следующие строки в тот же файл:
VirtualHost "guest.your_domain"
    authentication = "anonymous"
    c2s_require_encryption = falseCode language: JavaScript (javascript)
  1. Сохраните и закройте файл.
  2. Откройте файл конфигурации Jicofo:
sudo nano /etc/jitsi/jicofo/sip-communicator.propertiesCode language: Bash (bash)
  1. Добавьте следующую строку в конец файла:
org.jitsi.jicofo.auth.URL=XMPP:your_domain

Замените your_domain на ваше доменное имя.

  1. Сохраните и закройте файл.
  2. Откройте файл «/etc/jitsi/meet/yoonur-domainfig.js
  3. Раскоментируйте строку:
anonymousdomain: 'guest.your_domain',Code language: JavaScript (javascript)
  1. Перезапустите все службы Jitsi:
sudo systemctl restart prosody.service
sudo systemctl restart jicofo.service
sudo systemctl restart jitsi-videobridge2.serviceCode language: Bash (bash)

Теперь, чтобы создать новую конференцию, пользователи должны будут войти в систему:

Jitsi Meeting - Создание комнаты
Jitsi Meeting - Авторизация пользователя
Оценить
Exception.Expert