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.
- Обновите репозиторий Debian и установите эти пакеты с помощью следующей команды.
sudo apt install apt-transport-https gnupg2 nginx-full sudo curl -y
- 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 в систему. Для этого выполните следующие команды.
- Добавьте репозиторий 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 -
- Добавьте репозиторий 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
- Далее, обновите репозиторий Debian.
sudo apt update
Настройка UFW Firewall и Systemd Limits
В целях безопасности рекомендуется использовать Jitsi с UFW firewall. Также, для повышения производительности Jitsi, вам необходимо увеличить лимиты (max open files, max processes) в системе Debian.
- Выполните следующую команду для установки пакетов брандмауэра UFW.
sudo apt install ufw -y
- После установки 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.
- Выполните команду apt ниже для установки инструмента certbot.
sudo apt install certbot -y
- После завершения установки 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.
- Установите пакеты 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. - Далее проверьте все службы 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.
- Сначала необходимо включить аутентификацию на службе 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
Сохраните конфигурацию и выйдите. - Далее необходимо добавить гостевой/анонимный домен в конфигурацию 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“,
- Создайте новую конфигурацию 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
сохраните конфигурацию и выйдите. - Перезапустите все службы Jitsi с помощью следующей команды для применения новых конфигураций.
sudo systemctl restart prosody sudo systemctl restart jicofo sudo systemctl restart jitsi-videobridge2 sudo systemctl restart nginx
- Наконец, вы должны создать нового пользователя-модератора для вашей видеоконференции Jitsi с помощью команды prosodyctl, приведенной ниже. Обязательно измените пользователя, доменное имя и пароль.
sudo prosodyctl register johndoe jitsi.example.io SecretPasswd
Теперь вы успешно включили аутентификацию на Jitsi Video Conference. И вы готовы начать новую первую встречу с Jitsi.
Создание первой встречи с Jitsi
- Откройте веб-браузер и введите в адресную строку ваш установочный домен Jitsi.
https://jitsi.example.io/
- Чтобы создать первую комнату для встреч, введите название вашей комнаты для встреч и нажмите кнопку Начать встречу.
- Появится всплывающее окно «Ожидание ведущего…». Нажмите кнопку Я ведущий, чтобы начать встречу.
- Теперь введите пользователя и пароль модератора Jitsi, затем нажмите кнопку Вход.
- И вы увидите экран вашей переговорной комнаты Jitsi.
Теперь вы создали первую встречу с помощью Jitsi Video Conference.
Заключение
Поздравляю! Вы изучили базовую установку Jitsi Video Conference на Debian 11 Bullseye. Также вы узнали, как настроить брандмауэр UFW, установить системные ограничения и сгенерировать SSL Letsencrypt с помощью инструмента certbot.
В конце руководства вы узнали, как включить аутентификацию на Jitsi и начать первую встречу с помощью Jitsi Video Conference.
Комментарии (0)