С момента начала пандемии резко возросла потребность в сервисах для аудио и видео встреч. И с тех пор этот сфера программных продуктов активно развивается. Среди open source проектов один из самых популярных -
Jitsi. Он может работать как самостоятельный продукт, так и интегрироваться в состав других. К примеру,
Rocket.Chat использует его в качестве внутренних видеозвонков, а так же чат сервер
Matrix-Synapse.
Попробовать Jitsi можно как в
публичном сервисе, так и развернув его у себя. Покажу, как это сделать на Debian 12. Проверил на этой версии, но инструкция будет актуальна для любого deb дистрибутива, так как используется общий репозиторий разработчиков.
Перед установкой я подготовил VPS с внешним IP адресом, создал для него DNS запись и прописал её в качестве hostname, чтобы можно было сразу получить бесплатный сертификат от Let's Encrypt.
Устанавливаем необходимые зависимости:
# apt install apt-transport-https gnupg
Подключаем репозиторий и импортируем его ключ:
# echo 'deb
https://download.jitsi.org stable/' \
| tee /etc/apt/sources.list.d/jitsi-stable.list
# wget -qO - https://download.jitsi.org/jitsi-key.gpg.key \
| apt-key add -
Устанавливаем сервер Jitsi. Он, кстати, работает на Java:
# apt update
# apt install jitsi-meet
В процессе установки вас попросят ввести полное FQDN имя сервера. А затем спросят, хотите ли вы получить сертификаты от Let's Encrypt. Если у вас с DNS всё в порядке, то заказывайте сертификаты, если нет, то выберите вариант с self signed.
Далее вся установка и настройка выполнятся автоматически. Проверить статус службы можно вот так:
# systemctl status jitsi-videobridge2
Если всё в порядке, заходите по FQDN имени браузером, увидите свой сервер Jitsi с возможностью создать комнату для конференции. Если вас будет выкидывать из комнаты при подключении второго человека, то перезапустите службу:
# systemctl restart jitsi-videobridge2
Это, похоже, какой-то старый баг, описание, как и решение, которого я увидел в одном из issue в репозитории.
После установки сервер доступен для всех без аутентификации, как при создании конференции, так и подключении. Подозреваю, что вы не собираетесь делать его публичным, так что сразу настройте одну из аутентификаций. Описание есть в
документации.
Можно настроить аутентификацию на создание конференций, а подключения к уже существующим комнатам позволить в том числе анонимным пользователям, если их подтвердит модератор, либо они будут знать пароль от комнаты. Jitsi поддерживает как внутреннюю аутентификацию (смотри настройку Prosody), так и внешнюю через LDAP.
По умолчанию Jitsi работает через Nginx, так что конфигурацию веб сервера или http логи смотреть надо в нём. А логи самого сервера живут в /var/log/jitsi/jvb.log.
⇨
Сайт /
Исходники💡Аналогом Jitsi можно считать тоже бесплатный open source проект
BigBlueButton, про который я уже
писал. Также можно воспользоваться бесплатной версией
TrueConf Server Free с ограничением в 10 абонентов (считаются пользователи онлайн).
#видеоконференции