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

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

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

Предварительные условия

В этой статье мы рассмотрим установку и настройку видеоконференции Jitsi на последней версии Debian 11 Bullseye. В конце этого руководства вы сможете создать встречу с помощью видеоконференции Jitsi.
Прежде чем начать, убедитесь, что у вас есть следующие требования:

  • Операционная система: Debian 11 Bullseye
  • Root привилегии

Приступаем.

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

Первым шагом будет установка некоторых зависимых пакетов, таких как 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 Firewall и Systemd Limits

В целях безопасности рекомендуется использовать Jitsi с UFW firewall. Также, для повышения производительности Jitsi, вам необходимо увеличить лимиты (max open files, max processes) в системе 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 для подтверждения и нажмите Enter для включения, и вы активировали брандмауэр 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 заблокированы, будет использоваться этот порт).
    • Чтобы установить ограничения на максимальное количество открытых файлов, максимальное количество процессов и максимальное количество задач, необходимо отредактировать конфигурацию /etc/systemd/system.conf с помощью редактора nano.
      sudo nano /etc/systemd/system.conf

      Для Java приложений рекомендуется установить максимальные ограничения на 65000. Скопируйте и вставьте следующую конфигурацию.
      DefaultLimitNOFILE=65000
      DefaultLimitNPROC=65000
      DefaultTasksMax=65000

      сохраните конфигурацию и выйдите.
    • Затем перезагрузите сервер и снова войдите в систему, затем проверьте конфигурацию системных ограничений с помощью следующей команды.
      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. Не забудьте изменить адрес электронной почты и имя домена.
    sudo systemctl stop nginx
    sudo certbot certonly --standalone --agree-tos --no-eff-email --email user@email.com -d example.io

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

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

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

  1. Установите пакеты Jitsi.
    sudo apt install jitsi-meet

    Введите y для подтверждения установки и нажмите Enter для продолжения.
    В процессе установки вам будет предложено выполнить некоторые настройки.
    Для имени домена введите имя вашего домена Jitsi и выберите Ok.

    Для конфигурации SSL-сертификата выберите „I want to use my own certificate“ и Ok.

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

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

    Теперь вы завершили установку Jitsi Video Conference.
  2. Далее проверьте все службы Jitsi с помощью следующих команд.
    Проверьте службу coturn и убедитесь, что она активна и запущена.
    sudo systemctl status coturn

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

    Проверьте службу prosody и убедитесь, что она активна и запущена.
    И последнее, запустите и проверьте службу Nginx с помощью следующей команды.
    sudo systemctl start nginxsudo systemctl status nginx

    Если службы остановлены, вы можете запустить их с помощью команды systemctl.
    Переходим к следующему шагу по настройке аутентификации на Jitsi Video Conference.

Включение аутентификации на Jitsi Video Conference

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

  1. Сначала необходимо включить аутентификацию на службе Prosody и определить гостевой домен.
    Редактируйте конфигурацию Prosody для установки домена Jitsi. В этом примере пример домена – jitsi.example.io.
    sudo nano /etc/prosody/conf.d/jitsi.example.io.cfg.lua

    Измените аутентификацию по умолчанию anonymous на internal_hashed, как показано ниже.
    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. Далее необходимо добавить гостевой/анонимный домен в конфигурацию 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“, как показано ниже.
        hosts: {
            // XMPP domain.
            domain: „jitsi.example.io“,
            // When using authentication, domain for guest users.
            // anonymousdomain: „guest.example.com“,
anonymousdomain: „guest.jitsi.example.io“, Сохраните конфигурацию и выйдите.
  1. Создайте новую конфигурацию sip-communicator.properties в каталоге конфигурации jicofo.
    sudo nano /etc/jitsi/jicofo/sip-communicator.properties

    Скопируйте и вставьте следующую конфигурацию. Это разрешит запросы от аутентифицированного домена jitsi.example.io к jicofo.
    org.jitsi.jicofo.auth.URL=XMPP:jitsi.example.io

    сохраните конфигурацию и выйдите.
  2. Перезапустите все службы Jitsi с помощью следующей команды для применения новых конфигураций.
    sudo systemctl restart prosody
    sudo systemctl restart jicofo
    sudo systemctl restart jitsi-videobridge2
    sudo systemctl restart nginx
  3. Наконец, вы должны создать нового пользователя-модератора для вашей видеоконференции Jitsi с помощью команды prosodyctl, приведенной ниже. Обязательно измените пользователя, доменное имя и пароль.
    sudo prosodyctl register johndoe jitsi.example.io SecretPasswd

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

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

  1. Откройте веб-браузер и введите в адресную строку ваш установочный домен Jitsi.
    https://jitsi.example.io/
  2. Чтобы создать первую комнату для встреч, введите название вашей комнаты для встреч и нажмите кнопку Начать встречу.
  3. Появится всплывающее окно «Ожидание ведущего…». Нажмите кнопку Я ведущий, чтобы начать встречу.
  4. Теперь введите пользователя и пароль модератора Jitsi, затем нажмите кнопку Вход.
  5. И вы увидите экран вашей переговорной комнаты Jitsi.

    Теперь вы создали первую встречу с помощью Jitsi Video Conference.

Заключение

Поздравляю! Вы изучили базовую установку Jitsi Video Conference на Debian 11 Bullseye. Также вы узнали, как настроить брандмауэр UFW, установить системные ограничения и сгенерировать SSL Letsencrypt с помощью инструмента certbot.

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

Зарубин Иван Эксперт по Linux и Windows

Парашютист со стажем. Много читаю и слушаю подкасты. Люблю посиделки у костра, песни под гитару и приближающиеся дедлайны. Люблю путешествовать.

Вдохновлен www.howtoforge.com

Похожие статьи

Комментарии (0)