Как установить платформу для видеоконференций Jitsi на Debian 11

Jitsi — это бесплатное решение с открытым исходным кодом для создания безопасной платформы видеоконференций. Jitsi основана на таких программах с открытым исходным кодом, как coturn, prosody, jitsi video bridge, jitsi meet и т.д. Основными компонентами Jitsi являются Jitsi video bridge и Jitsi meet, которые позволяют пользователям начинать конференции через интернет,

Jitsi совместим с открытым стандартом WebRTC для веб-коммуникаций. Jitsi совместим с открытым стандартом WebRTC для веб-коммуникаций и предлагает лучшее качество, низкую задержку и расширенную маршрутизацию видео с оценкой пропускной способности и масштабируемым кодированием видео.

На стороне клиента Jitsi предлагает приложения для различных систем, включая Jitsi Desktop для пользователей компьютеров, а также клиенты для Android и iOS.

Установка зависимостей пакетов

Первым шагом будет установка некоторых зависимых пакетов, таких как gnupg2, nginx-full, sudo, apt-transport-https, curl и java OpenJDK.

1. Обновите репозиторий Debian и установите эти пакеты с помощью следующей команды.

sudo apt install apt-transport-https gnupg2 nginx-full sudo curl -y

2. Jitsi требует Java OpenJDK версии 1.8 или 1.11; стандартный репозиторий Debian предоставляет Java OpenJDK 1.11.

Теперь выполните следующую команду для установки пакетов Java OpenJDK.

sudo apt install default-jdk -y

После завершения установки проверьте версию Java OpenJDK с помощью следующей команды.

java -version

Вы увидите результат, аналогичный приведенному ниже.

openjdk version "11.0.13" 2021-10-19
OpenJDK Runtime Environment (build 11.0.13+8-post-Debian-1deb11u1)
OpenJDK 64-Bit Server VM (build 11.0.13+8-post-Debian-1deb11u1, mixed mode, sharing)

После установки всех пакетов перейдите к настройке репозиториев Jitsi и Prosody.

Добавление репозитория Jitsi и Prosody

Jitsi имеет такие важные компоненты, как Jitsi Videbridge, Jicofo, Jigasi, Prosody (внешнее программное обеспечение) и т.д.

Перед установкой Jitsi необходимо добавить репозиторий Prosody и Jitsi в систему. Для этого выполните следующие команды.

1. Добавьте репозиторий Prosody и ключ GPG с помощью следующей команды.

echo deb http://packages.prosody.im/debian $(lsb_release -sc) main | sudo tee -a /etc/apt/sources.list
wget https://prosody.im/files/prosody-debian-packages.key -O- | sudo apt-key add -

2. Добавьте репозиторий Jitsi и ключ GPG с помощью команды ниже.

curl https://download.jitsi.org/jitsi-key.gpg.key | sudo sh -c 'gpg --dearmor > /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 > /dev/null

3. Затем обновите и пополните репозиторий Debian с помощью следующей команды.

sudo apt update

Настройка брандмауэра UFW и лимитов Systemd

В целях безопасности рекомендуется запускать Jitsi с брандмауэром UFW. Кроме того, для повышения производительности Jitsi необходимо увеличить лимиты (максимальное количество открытых файлов, максимальное количество процессов) в системе Debian.

1. Выполните следующую команду для установки пакетов брандмауэра UFW.

sudo apt install ufw -y

2. После установки UFW выполните приведенную ниже команду ‘ufw’, чтобы открыть некоторые порты для Jitsi.

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 10000/udp
sudo ufw allow 22/tcp
sudo ufw allow 3478/udp
sudo ufw allow 5349/tcp

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

sudo ufw enable

Введите ‘y‘ для подтверждения и нажмите ‘Введите‘ для включения, и вы активировали брандмауэр UFW в вашей системе Debian.

Подробные порты для Jitsi:

  • Порт 80/tcp: HTTP порт будет генерировать SSL Let’sencrypt.Порт 443/tcp: Клиентские запросы будут защищены через протокол HTTPS.
  • Порт 10000/udp: общий порт для видео и аудио связи.
  • Порт 22/tcp: Порт SSH по умолчанию для управления сервером Jitsi.
  • Порт 3478/udp: Постановка в очередь на сервер STUN.
  • Порт 5349/tcp: резервный порт для аудио- и видеосвязи по TCP (если порты UDP заблокированы, будет использоваться этот порт).

3. Чтобы установить ограничения на максимальное количество открытых файлов, максимальное количество процессов и максимальное количество задач, необходимо отредактировать конфигурацию ‘/etc/systemd/system.conf’ с помощью редактора nano.

sudo nano /etc/systemd/system.conf

Для Java-приложений рекомендуется установить максимальный лимит в ‘65000’. Скопируйте и вставьте следующую конфигурацию.

DefaultLimitNOFILE=65000
DefaultLimitNPROC=65000
DefaultTasksMax=65000

сохраните конфигурацию и выйдите.

4. Затем перезагрузите сервер и снова войдите в систему, после чего проверьте конфигурацию системных границ с помощью следующей команды.

systemctl show --property DefaultLimitNPROC
systemctl show --property DefaultLimitNOFILE
systemctl show --property DefaultTasksMax

Убедитесь, что значение ‘DefaultLimitNPROC‘ (максимум процессов), ‘DefaultLimitNOFILE‘ (максимум открытых файлов), и ‘DefaultTasksMax‘ (максимальный лимит потоков) — это ‘65000‘.

Генерация SSL Letsencrypt с помощью Certbot

В этом шаге вы установите инструмент certbot и сгенерируете SSL letsencrypt для защиты установки Jitsi.

1. Выполните приведенную ниже команду apt, чтобы установить инструмент certbot.

sudo apt install certbot -y

2. После завершения установки certbot остановите службу Nginx и создайте SSL letsencrypt с помощью приведенной ниже команды certbot. Не забудьте изменить адрес электронной почты и доменное имя.

sudo systemctl stop nginx
sudo certbot certonly --standalone --agree-tos --no-eff-email --email [email protected] -d example.io

Если все процессы завершены, вы увидите ваши SSL-сертификаты в каталоге ‘/etc/letsencrypt/live/jitsi.example.io/‘. Публичный сертификат — это ‘fullchain.pem’, а закрытый ключ — ‘privkey.pem‘.

Установка видеоконференции Jitsi на Debian 11

В этом шаге вы установите и настроите видеоконференцию Jitsi на сервере Debian.

1. Установите пакеты Jitsi с помощью команды apt, приведенной ниже.

sudo apt install jitsi-meet

Введите ‘y‘, чтобы подтвердить установку, и нажмите ‘Введите‘, чтобы продолжить.

Во время установки вам будет предложено выполнить некоторые настройки.

Для имени домена введите установку домена Jitsi и выберите ‘Ok‘.

Настройка домена Jitsi

Для настройки SSL-сертификата выберите ‘Я хочу использовать свой собственный сертификат’ и ‘Ok‘.

использование сертификата для jitsi

Теперь введите полный путь к вашему закрытому ключу SSL ‘privkey.pem‘ и выберите ‘Хорошо‘.

Закрытый ключ SSL Jitsi

Теперь введите полный путь к открытому ключу SSL ‘fullchain.pem’ и выберите ‘Хорошо‘.

Jitsi Public Key SSL

Теперь вы завершили установку видеоконференции Jitsi.

2. Далее проверьте все службы Jitsi с помощью следующих команд.

Проверьте службу coturn и убедитесь, что она активна и запущена.

sudo systemctl status coturn

Проверьте службы jicofo и jitsi-videobridge и убедитесь, что они активны и запущены.

sudo systemctl status jicofo
sudo systemctl status jitsi-videobridge2

Проверьте службу prosody и убедитесь, что она активна и запущена.

sudo systemctl status prosody

И последнее, запустите и проверьте службу Nginx с помощью следующей команды.

sudo systemctl start nginx
sudo systemctl status nginx

Если службы остановлены, вы можете запустить их с помощью команды systemctl.

Переходим к следующему шагу по настройке аутентификации на Jitsi Video Conference.

Включение аутентификации на видеоконференции Jitsi

В этом шаге вы включите аутентификацию в видеоконференции Jitsi. С помощью этого метода только модератор с правильной аутентификацией сможет начать встречу с Jitsi.

1. Сначала необходимо включить аутентификацию на службе Prosody и определить гостевой домен.

Отредактируйте конфигурацию Prosody для установки домена Jitsi. В этом примере в качестве домена используется ‘jitsi.example.io‘.

sudo nano /etc/prosody/conf.d/jitsi.example.io.cfg.lua

Изменение аутентификации по умолчанию ‘анонимный‘ к ‘внутренний_хаш‘ как показано ниже.

VirtualHost "jitsi.example.io"
    -- enabled = false -- Remove this line to enable this host
    authentication = "internal_hashed"

Добавьте новый виртуальный хост для гостей с именем ‘guest.jitsi.example.io‘ как показано ниже.

VirtualHost "guest.jitsi.example.io"
    authentication = "anonymous"
    c2s_require_encryption = false

Сохраните конфигурацию и выйдите.

2. Далее необходимо добавить домен guest/anonymous в конфигурацию Jitsi Meet.

Отредактируйте конфигурацию Jitsi Meet ‘jitsi.example.io-config.js‘ с помощью редактора nano.

sudo nano /etc/jitsi/meet/jitsi.example.io-config.js

Добавьте анонимный домен ‘guest.jitsi.example.io’ на ‘хозяева‘ раздел, как показано ниже.

    hosts: {
        // XMPP domain.
        domain: 'jitsi.example.io',

// When using authentication, domain for guest users.
// anonymousdomain: ‘guest.example.com’,

anonymousdomain: ‘guest.jitsi.example.io’,

Сохраните конфигурацию и выйдите.

3. Создайте новую конфигурацию, ‘sip-communicator.properties‘, в каталоге конфигурации jicofo.

sudo nano /etc/jitsi/jicofo/sip-communicator.properties

Скопируйте и вставьте следующую конфигурацию. Это разрешит запросы от аутентифицированного домена ‘jitsi.example.io‘ в джикофо.

org.jitsi.jicofo.auth.URL=XMPP:jitsi.example.io

сохраните конфигурацию и выйдите.

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

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

5. Наконец, необходимо создать нового пользователя-модератора для видеоконференции Jitsi с помощью команды prosodyctl, приведенной ниже. Обязательно измените пользователя, доменное имя и пароль.

sudo prosodyctl register johndoe jitsi.example.io SecretPasswd

Теперь вы успешно включили аутентификацию на Jitsi Video Conference. И вы готовы начать новую первую встречу с Jitsi.

Создание первой встречи с Jitsi

1. Откройте веб-браузер и введите в адресную строку домен вашей установки Jitsi.

https://jitsi.example.io/

2. Чтобы создать первую переговорную комнату, введите название переговорной комнаты и нажмите кнопку ‘Начать совещание‘.

Jitsi Start Meeting

3. Появится всплывающее окно ‘Waiting for the host …’. Нажмите кнопку ‘Я — хозяин». , чтобы начать встречу.

Аутентификация Jitsi для модератора

4. Теперь введите пользователя и пароль модератора Jitsi, затем нажмите кнопку ‘Вход‘ кнопка.

Jitsi authentiction moderator

5. На экране появится переговорная комната Jitsi.

Jitsi Meet

Теперь вы создали первую встречу с помощью видеоконференции Jitsi.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *