8.2.5 Разворачиваем сервер для видеоконференций с помощью Jitsi на VPS

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

Системные требования

Для корректной работы Jitsi рекомендуются:

  • VPS с Ubuntu 20.04 или 22.04;
  • Минимум 2 ГБ ОЗУ (лучше 4+ ГБ для конференций с 5+ участниками);
  • 1 CPU, лучше 2+;
  • Доменное имя, направленное на IP сервера;
  • Права root или sudo доступ

Если у Вас нет доменного имени, то Вы можете купить его тут.

Подготовка сервера

Для начала убедитесь, что Ваш домен направлен на ip адрес сервера. Перейдите по адреcу https://thehost.ua/domains/checkup и введите название Вашего домена.

Обновите систему:

sudo apt update && sudo apt upgrade -y

Установите нужные утилиты:

sudo apt install curl gnupg2 apt-transport-https software-properties-common -y

Установка Jitsi

Добавляем репозиторий Jitsi:

sudo apt install curl gnupg2 -y
curl https://download.jitsi.org/jitsi-key.gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/jitsi-keyring.gpg

Создание файла репозитория:

echo 'deb [signed-by=/usr/share/keyrings/jitsi-keyring.gpg] https://download.jitsi.org stable/' | sudo tee /etc/apt/sources.list.d/jitsi-stable.list

Важно: перед установкой Jitsi Meet необходимо установить ssl сертификат для доменного имени.

Установить бесплатный SSL сертификат Вы можете согласно нашей инструкции.

Установка Jitsi Meet

Приступите к установке Jitsi Meet

sudo apt update
sudo apt install jitsi-meet -y

Укажите ваш домен (например, meet.example.com); Выберите Let’s Encrypt сертификат.

Настройка авторизации и ограничений

Jitsi по умолчанию позволяет любому пользователю создавать конференции. Чтобы ограничить это: Откройте файл:

sudo nano /etc/prosody/conf.avail/meet.example.com.cfg.lua

Измените:

authentication = "internal_plain"

Добавьте пользователя:

sudo prosodyctl register moderator meet.example.com

Затем перезапустите сервисы:

sudo systemctl restart prosody
sudo systemctl restart jicofo
sudo systemctl restart jitsi-videobridge2

Настройка Firewall

Откройте необходимые порты с помощью (UFW):

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 10000/udp
sudo ufw allow 22/tcp
sudo ufw enable

Важно: Порт 10000/UDP используется для передачи видеопотока WebRTC. Без него не будет работать видео и звук.

Альтернативно или дополнительно — настройка iptables:

# Разрешить SSH
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT

# Разрешить HTTP
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT

# Разрешить HTTPS
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT

# Разрешить WebRTC (UDP 10000)
sudo iptables -A INPUT -p udp --dport 10000 -j ACCEPT

# Разрешить установленные соединения и loopback
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A INPUT -i lo -j ACCEPT

# Отклонить всё остальное (по умолчанию)
sudo iptables -P INPUT DROP
sudo iptables -P FORWARD DROP
sudo iptables -P OUTPUT ACCEPT

После вышеперечисленых действий проверьте работу сервиса в браузере. Перейдите по адресу домена который Вы используете или IP адреса Вашего сервера. В браузере должно открыться окно создания конференции.

Информируем: Для получения дополнительной информации можете воспользоваться официальными ресурсами: