Установка Jitsi Meet в Debian 10
Jitsi Meet – это открытое приложение для видеоконференций, основанное на WebRTC. Сервер Jitsi Meet предоставляет конференц-залы, к которым вы можете получить доступ в браузере. Функции Jitsi Meet во многом похожи на Zoom или Skype. Но преимущество Jitsi заключается в том, что все данные проходят только через ваш сервер.
Также Jitsi поддерживает сквозное шифрование TLS, благодаря чему никто не сможет отследить ваши звонки. Благодаря Jitsi вы можете быть уверены, что ваша личная информация останется личной.
В этом мануале вы узнаете, как установить и настроить сервер Jitsi Meet в Debian 10. Стандартная конфигурация позволяет любому пользователю создать новый конференц-зал. Это не лучший вариант, если ваш сервер находится в публичном доступе в интернете, поэтому мы настроим Jitsi Meet так, чтобы создавать новые конференц-залы могли только зарегистрированные пользователи. После того как вы создадите конференц-зал, другие пользователи смогут присоединиться к нему, если у них есть уникальный адрес и (опционально) пароль.
Jitsi Meet — Самый Полный Обзор БЕСПЛАТНОЙ Системы Видео Конференций
Требования
- Сервер Debian 10, настроенный согласно этому мануалу (включая пользователя sudo). Размер сервера, который вам понадобится, зависит от доступной пропускной способности и предполагаемого количества участников. Ниже вы найдете таблицу, которая поможет вам определить необходимый размер.
- Доменное имя, направленное на ваш сервер (в этом мануале используется условный домен jitsi.example.com).
При выборе сервера для запуска Jitsi Meet вам необходимо учитывать системные ресурсы, необходимые для размещения конференц-залов. Следующая информация собрана с одноядерной виртуальной машины с поддержкой видео высокого качества:
CPU | Пропускная способность | |
Два участника | 3% | 30 Кбит/с выгрузка, 100 Кбит/с загрузка |
Три участника | 15% | 7 Мбит/с выгрузка, 6.5 Мбит/с загрузка |
Такой скачок в использовании ресурсов между двумя и тремя участниками происходит потому, что Jitsi маршрутизирует данные вызова напрямую между клиентами, когда их двое. Когда на конференции присутствует более двух клиентов, данные о вызовах направляются через сервер Jitsi Meet.
1: Установка имени хоста
На этом этапе мы изменим имя хоста системы, чтобы оно соответствовало домену, который мы будем использовать для своего экземпляра Jitsi Meet, и разрешим это имя хоста на IP-адрес localhost, 127.0.0.1. Jitsi Meet использует оба эти параметра при установке и создании конфигурационных файлов.
Сначала установите в качестве имени хоста системы тот домен, который вы будете использовать для своего сервера Jitsi. Следующая команда установит текущее имя хоста и отредактирует файл /etc/hostname, в котором имя хоста системы сохраняется между перезагрузками:
Jitsi Meet — краткий обзор программы для видеоконференций
sudo hostnamectl set-hostname jitsi.your-domain
Эта команда состоит из таких компонентов:
- hostnamectl – утилита из набора инструментов systemd, предназначенная для управления именем хоста системы.
- set-hostname устанавливает имя хоста.
Убедитесь, что команда выполнена успешно, запустив эту команду:
Она выведет на экран имя хоста, которое вы установили с помощью команды hostnamectl:
Затем нужно настроить локальное сопоставление имени хоста сервера с IP-адресом 127.0.0.1. Для этого откройте файл /etc/hosts в редакторе:
sudo nano /etc/hosts
Добавьте в файл следующую строку:
Сопоставление домена вашего сервера Jitsi Meet с адресом 127.0.0.1 позволяет ему использовать несколько сетевых процессов, которые принимают локальные соединения друг от друга по IP-адресу 127.0.0.1. Эти подключения проходят проверку подлинности и шифруются с помощью сертификата TLS, который зарегистрирован на ваш домен. Локальное сопоставление домена с 127.0.0.1 позволяет использовать TLS-сертификат для этих локальных сетевых подключений.
Сохраните и закройте файл.
Теперь у вашего сервера есть имя хоста, которое необходимо для установки Jitsi. После этого нам нужно открыть порты брандмауэра для Jitsi и инсталлятора сертификата TLS.
2: Настройка фаервола
Следуя мануалу по начальной настройке сервера, вы включили брандмауэр UFW и открыли порт SSH. Серверу Jitsi необходимо несколько портов, чтобы он смог взаимодействовать с вызывающими клиентами. Кроме того, в процессе установки TLS должен быть открыт порт, чтобы центр сертификации смог аутентифицировать запрос.
Сейчас вы откроете такие порты:
- 80/tcp, указанный в запросе сертификата TLS.
- 443/tcp, который нужен веб-странице для создания конференц-зала.
- 4443/ tcp и 10000/udp – для передачи и приема зашифрованного трафика.
Выполните следующие команды ufw, чтобы открыть эти порты:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 4443/tcp
sudo ufw allow 10000/udp
Убедитесь, что все порты открылись. Это можно сделать с помощью команды ufw status:
sudo ufw status
Вы получите такой вывод:
Status: active
To Action From
— —— —-
OpenSSH ALLOW Anywhere
80/tcp ALLOW Anywhere
443/tcp ALLOW Anywhere
4443/tcp ALLOW Anywhere
10000/udp ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
80/tcp (v6) ALLOW Anywhere (v6)
443/tcp (v6) ALLOW Anywhere (v6)
4443/tcp (v6) ALLOW Anywhere (v6)
10000/udp (v6) ALLOW Anywhere (v6)
Теперь сервер готов к установке Jitsi.
3: Установка Jitsi Meet
Сейчас мы добавим на свой сервер стабильный репозиторий Jitsi, а затем установим из этого репозитория пакет Jitsi Meet – так мы получим последний стабильный пакет Jitsi.
Сначала установите пакет gnupg, который позволяет управлять криптографическими ключами:
sudo apt install gnupg
Затем загрузите GPG-ключ для Jitsi с помощью утилиты wget:
Пакетный менеджер apt будет использовать этот ключ для проверки пакетов, которые вы загрузите из репозитория Jitsi.
Добавьте GPG ключ, который вы скачали, в связку ключей apt с помощью утилиты apt-key:
sudo apt-key add jitsi-key.gpg.key
Теперь вы можете удалить файл ключа GPG, он больше не нужен:
После этого можно добавить репозиторий Jitsi на свой сервер, создав новый исходный файл, содержащий репозиторий Jitsi. Откройте новый файл в редакторе:
sudo nano /etc/apt/sources.list.d/jitsi-stable.list
Добавьте в файл такую строку, чтобы указать нужный репозиторий:
deb https://download.jitsi.org stable/
Сохраните и закройте файл.
Обновите систему, чтобы собрать список пакетов из репозитория Jitsi, а затем установите jitsi-meet:
sudo apt update
sudo apt install jitsi-meet
Во время установки jitsi-meet вам будет предложено ввести домен (например, jitsi.your-domain), который вы хотите использовать для своего экземпляра Jitsi Meet.
Примечание: Чтобы переместить курсор из поля имени хоста и выделить кнопку , используйте клавишу TAB. Нажмите Enter, когда выделите , чтобы отправить имя хоста.
Затем появится новое диалоговое окно, которое спросит, должен ли Jitsi создать самоподписанный сертификат TLS или использовать уже имеющийся у вас.
Если у вас нет TLS-сертификата для вашего домена Jitsi, выберите первый вариант, Generate a new self-signed certificate.
Эта опция установит Jitsi Meet с помощью самоподписанного сертификата TLS. Позже такой сертификат вызовет предупреждения браузера, поэтому лучше получить доверенный сертификат.
4: Получение доверенного TLS-сертификата
Jitsi Meet использует сертификаты TLS для шифрования трафика, чтобы посторонние не могли прослушивать ваши звонки. Сертификаты TLS – это те же сертификаты, которые используются веб-сайтами для включения URL-адресов по HTTPS.
Jitsi Meet предоставляет программу для автоматической загрузки TLS-сертификата, которая использует утилиту Certbot. Вам нужно установить эту программу.
Сначала установите пакет certbot:
sudo apt install certbot
Теперь ваш сервер готов к установке программы для получения TLS-сертификата, предоставленной Jitsi Meet.
Когда вы запустите сценарий, он запросит у вас адрес электронной почты:
Этот адрес будет отправлен сервису https://letsencrypt.org (который выдает сертификат). По этому адресу вы будете получать уведомления о безопасности и других вопросах, связанных с сертификатом TLS. Введите адрес электронной почты, чтобы продолжить установку. После этого программа будет установлена без дополнительных запросов.
Теперь экземпляр Jitsi Meet использует подписанный сертификат TLS. Обновление сертификата также будет выполняться автоматически, поскольку инсталлятор разместил сценарий обновления в /etc/cron.weekly/letsencrypt-renew, который будет запускаться каждую неделю.
Теперь сервер Jitsi Meet запущен, мы можем его протестировать. Откройте браузер и укажите в нем свое доменное имя. Вы сможете создать новый конференц-зал и пригласить других пользователей присоединиться к вам.
Стандартная конфигурация Jitsi Meet позволяет создавать новый конференц-зал любому пользователю, который посещает домашнюю страницу Jitsi Meet. Это повышает использование системных ресурсов; в целом такая настройка нежелательна, так как поддерживает неавторизованных пользователей. Далее мы мы покажем, как изменить эту настройку Jitsi Meet, чтобы создавать конференции могли только зарегистрированные пользователи.
5: Ограничение создания конференц-залов
Давайте изменим настройку сервера Jitsi Meet, чтобы разрешить создание конференц-залов только зарегистрированным пользователям. Файлы, которые вам нужно отредактировать, были созданы инсталлятором и содержат ваш домен.
В следующих примерах вместо вашего домена указан условный your_domain.
Сначала откройте файл /etc/prosody/conf.avail/your_domain.cfg.lua в текстовом редакторе:
sudo nano /etc/prosody/conf.avail/your_domain.cfg.lua
Найдите эту строку:
Измените ее вот так:
Эта конфигурация позволяет Jitsi Meet принудительно выполнять аутентификацию, прежде чем разрешить создание конференц-зала новому посетителю.
Затем в том же файле поместите следующий раздел (добавьте его в конец файла):
.
VirtualHost «guest.your_domain»
authentication = «anonymous»
c2s_require_encryption = false
Эта конфигурация позволяет анонимным пользователям присоединяться к конференц-залам, созданным аутентифицированным пользователем. Однако у гостя должен быть уникальный адрес и пароль для входа.
Здесь мы добавили guest. перед вашим доменным именем (например, из домена jitsi.your-domain получится guest.jitsi.your-domain). Имя хоста guest. используется Jitsi Meet только для внутренних целей. Вы никогда не будете вводить его в браузер или создавать для него DNS-записи.
Откройте другой файл, /etc/jitsi/meet/your_domain-config.js, с помощью текстового редактора:
sudo nano /etc/jitsi/meet/your_domain-config.js
Отредактируйте эту строку:
чтобы она выглядела так:
Опять же, с помощью имени хоста guest.your_domain, которое вы использовали ранее, эта конфигурация сообщает Jitsi Meet, какое внутреннее имя хоста использовать для неавторизованных гостей.
Затем откройте /etc/jitsi/jicofo/sip-communicator.properties:
sudo nano /etc/jitsi/jicofo/sip-communicator.properties
И добавьте следующую строку, чтобы завершить изменения конфигурации:
Эта конфигурация направляет один из процессов Jitsi Meet на локальный сервер, который выполняет аутентификацию пользователя, а она теперь обязательная.
Ваш экземпляр Jitsi Meet теперь настроен так, что только зарегистрированные пользователи могут создавать конференц-залы. После создания конференц-зала к нему может присоединиться любой желающий, даже неавторизованные пользователи. Однако для этого им потребуется это уникальный адрес конференц-зала и (опционально) пароль, установленный создателем комнаты.
Теперь, когда Jitsi Meet требует аутентификации для создания комнаты, вам необходимо зарегистрировать пользователей и их пароли. Для этого можно воспользоваться утилитой prosodyctl.
Выполните следующую команду, чтобы добавить пользователя на свой сервер:
sudo prosodyctl register user your_domain password
Добавленный вами пользователь не является системным. Такие пользователи смогут только создать конференц-зал, но не смогут войти на ваш сервер через SSH.
Перезапустите процессы Jitsi Meet и Nginx, чтобы загрузить новую конфигурацию:
sudo systemctl restart prosody.service
sudo systemctl restart jicofo.service
sudo systemctl restart jitsi-videobridge2.service
sudo systemctl restart nginx
Теперь Jitsi Meet запрашивает имя пользователя и пароль при создании конференц-зала.
Заключение
В этом мануале вы научились устанавливать сервер Jitsi Meet для проведения безопасных видеоконференций. Больше о Jitsi можно узнать в вики проекта.
Источник: www.8host.com
Установка сервера для видеоконференций Jitsi Meet
Jitsi Meet — это бесплатное программное обеспечение с открытым исходным кодом, которое позволяет создавать и развертывать решения для видеоконференцсвязи. Jitsi Meet работает на базе открытой технологии WebRTC. Это позволяет использовать для проведения конференций браузер, а также клиентские приложения для Linux, macOS, Windows, iOS и Android.
Внимание! Предупреждаем вас, что Jitsi Meet не подходит на роль полноценного сервиса видеоконференцсвязи. Это бесплатный продукт для демонстрации возможностей коммерческого облачного сервиса 8×8, у разработчиков нет задачи реализовать важные корпоративные возможности. А такие возможности как интеграция с AD/LDAP, обход NAT, поддержка SIP, запись конференций и др., доступны только при установке и настройке дополнительных плагинов. Более того, некоторые функции в принципе отсутствуют, например, создание запланированных конференций – все мероприятия по сути являются виртуальными комнатами.
Также следует учесть, что установка и поддержка в работоспособном состоянии сервера Jitsi Meet требует высокой квалификации по администрированию ОС Linux.
Если же вы хотите развернуть у себя Jitsi Meet, то вы попали по адресу, мы сейчас вам подробно покажем и расскажем как это сделать. Для того чтобы продолжить, следуйте приведённым ниже инструкциям.
Системные требования
- gnupg2
- nginx-full
- sudo
- OpenJDK 8/OpenJDK 11
Заранее ознакомьтесь со списком портов, которые вам понадобится открыть в ОС или пробросить во внешнюю сеть:
- 80/tcp — для верификации/продления SSL-сертификата с помощью Let’s Encrypt;
- 443/tcp – для общего доступа к Jitsi Meet;
- 10000/udp – для общей сетевой видео / аудиосвязи;
- 22/tcp – если вы обращаетесь к серверу с помощью SSH (значение по умолчанию, если вы используете другой порт, укажите его вместо 22).
Платформа Jitsi Meet поддерживает развёртывание на ОС Debian/Ubuntu и openSUSE. Для примера рассмотрим, как установить Jitsi Meet на Debian 10.
OpenJDK – среда выполнения Java. Требуется, т.к. Jitsi Meet написан на языке Java, при этом установится автоматически в качестве зависимости при установке Jitsi Meet (см. шаг 5).
Для выполнения перечисленных далее команд в ОС должна присутствовать программа sudo и пользователь, под которым они запускаются, должен быть в соответствующей группе. В Debian по умолчанию sudo может отсутствовать, проверьте её наличие командой sudo -V и установите при необходимости с помощью команды apt install sudo (выполняется под учётной записью root). А для добавления пользователя с логином user в группу sudo выполните sudo usermod -a -G sudo user .
Основные модули Jitsi Meet
Jicofo — XMPP-компонент, процесс, который управляет подключением клиентских приложений к видеоконференции. Также во время её проведения он реализует функционал отправки приглашений, распределения нагрузки при использовании нескольких XMPP-серверов и пр. У него есть свой HTTP API /about/health для опроса о состоянии ресурса.
Jitsi Videobridge – ключевой компонент системы. При передаче видео и аудио между участниками он выполняет роль посредника, то есть осуществляет функцию терминирования RTP/RTCP, устанавливает границы битрейта в обе стороны на каждого клиента. Есть свой собственный HTTP API для мониторинга ( /colibri/debug ).
Он работает по архитектуре Simulcast и не занимается транскодингом, потому потребляет относительно мало ресурсов CPU сервера, но при этом возрастает нагрузка на клиентскую часть по сравнению с другими архитектурами.
К системе ВКС Jitsi можно подключить несколько видеобриджей — тогда каждой новой конференции будет поставлен в соответствие один из них.
Jigasi — внешнее расширение для участия в Jitsi-конференциях через SIP-телефонию (требуется отдельная настройка).
Jibri — набор сервисов для записи и трансляции конференции. Запускает Chrome в виртуальном видеобуфере, захватывая и кодируя выходные данные с помощью ffmpeg. Сервис предназначен для запуска на отдельном компьютере (или виртуальной машине), без других приложений, использующих дисплей или аудио устройства. Каждый запущенный экземпляр Jibri поддерживает только один процесс записи за раз.
Prosody — это кроссплатформенный XMPP-сервер, написанный на языке программирования Lua.
Шаг 1. Установка дополнительных пакетов
1. Получите список доступных обновлений для всех пакетов из подключенных в ОС репозиториев:
Источник: trueconf.ru
Jitsi meet что это за программа
Jitsi Meet
версия: 22.5.1
Последнее обновление программы в шапке: 21.09.2022
Краткое описание:
Мгновенные видеоконференции со всеми членами вашей команды, друзьями и семьёй.
• Неограниченное количество пользователей: нет никаких искусственных ограничений на число участников. Только мощность сервера и его пропускная способность являются единственными ограничивающими факторами.
• Не требуется учётная запись!
• Защищённые «замком» комнаты: контролируйте доступ к вашим конференциям с помощью пароля.
• Шифрование по умолчанию!
• Высокое качество: аудио и видео передаются с чёткостью и насыщенностью Opus и VP8.
• Готовность к работе через веб-браузер: для присоединения к разговору можно и не загружать клиент. Jitsi Meet может работать прямо в браузерах. Для начала общения просто поделитесь URL-адресом вашей конференции с другими участниками.
• На 100 % открытый исходный код. Все благодаря удивительным сообществам со всего мира.
Требуется Android: 6.0 и выше
Русский интерфейс: Да
Отличие версии с F-Droid от версии с GP — отсутствие аналитики.
Прошлые версии
версия: 19.4.0 (F-Droid, all abi) Jitsi Meet_19.4.0.apk ( 35.42 МБ )
Источник: 4pda.to
Установка Jitsi Meet в Ubuntu 18.04
Автор выбрал фонд Open Internet/Free Speech для получения пожертвования в рамках программы Write for DOnations.
Введение
Jitsi Meet — приложение с открытым исходным кодом на базе WebRTC, предназначенное для проведения видеоконференций. Сервер Jitsi Meet создает виртуальные залы для видеоконференций на несколько человек, для доступа к которым требуется только браузер и которые обеспечивают функции, аналогичные Zoom или Skype. Преимущество конференции Jitsi заключается в том, что все ваши данные передаются только через ваш сервер, а комплексное шифрование TLS обеспечивает защиту от перехвата и несанкционированного прослушивания. С Jitsi вы можете быть уверены, что ваша частная информация будет защищена.
В этом обучающем модуле мы установим и настроим сервер Jitsi Meet в Ubuntu 18.04. Конфигурация по умолчанию позволяет любому пользователю создавать новые конференции. Такая настройка не идеальна для общедоступного сервера в Интернете, поэтому мы также настроим Jitsi Meet так, чтобы новые конференции могли создавать только зарегистрированные пользователи. После создания конференции к ней могут присоединиться любые пользователи, если у них есть уникальная ссылка и пароль (если он установлен).
Предварительные требования
Для прохождения этого обучающего руководства вам потребуется следующее:
- Один сервер Ubuntu 18.04, настроенный в соответствии с инструкциями по начальной настройке сервера с Ubuntu 18.04, а также non-root user с привилегиями sudo. Требуемый размер сервера в основном зависит от доступной пропускной способности и ожидаемого количества пользователей сервера. В следующей таблице примерно показано, что может потребоваться.
- Доменное имя, настроенное так, чтобы указывать на ваш сервер. Вы можете узнать, как указывать домены на DigitalOcean Droplet, из руководства Настройка имени хоста с помощью DigitalOcean. В этом руководстве используется пример доменного имени jitsi.your-domain .
Если вы выберете сервер для запуска экземпляра Jitsi Meet, вам нужно будет рассмотреть системные ресурсы, требующиеся для хостинга конференций. Следующая информация о тесте собрана на основе одноядерной виртуальной машины с использованием настроек видео высокого качества:
Два участника | 3% | 30 Кбит/с восходящее, 100 Кбит/с нисходящее |
Три участника | 15% | 7 Мбит/с восходящее, 6,5 Мбит/с нисходящее |
Разница в использовании ресурсов между двумя и тремя участниками обусловлена тем, что Jitsi перенаправляет данные вызовов напрямую между клиентами, если их только двое. Если имеется более двух клиентов, данные вызова пересылаются через сервер Jitsi Meet.
Шаг 1 — Настройка имени хоста системы
На этом шаге мы изменим имя хоста системы для соответствия доменного имени, которое вы планируете использовать для своего экземпляра Jitsi Meet, и сопоставим это имя хоста с IP-адресом localhost, 127.0.0.1 . Jitsi Meet использует обе эти настройки при установке и генерировании файлов конфигурации.
Вначале установите имя хоста системы на доменное имя, которое вы будете использовать для вашего экземпляра Jitsi. Следующая команда устанавливает имя текущего хоста и изменяет каталог /etc/hostname , где хранится имя хоста системы в промежутке между перезагрузками:
Запущенная команда разбивается на части следующим образом:
- hostnamectl — это утилита из набора инструментов systemd, предназначенная для правления именем хоста системы.
- set-hostname устанавливает имя хоста системы.
Для проверки успешного запуска запустите следующую команду:
Эта команда возвращает имя хоста, заданное командой hostnamectl :
Outputjitsi.your-domain
Далее мы установим локальное сопоставление имени хоста сервера с циклическим IP-адресом, 127.0.0.1 . Для этого откройте файл /etc/hosts в текстовом редакторе:
Затем добавьте следующую строку:
127.0.0.1 jitsi.your-domain
Сопоставление доменного имени сервера Jitsi Meet с адресом 127.0.0.1 позволяет серверу Jitsi Meet использовать несколько сетевых процессов, устанавливающих локальные соединения друг с другом на IP-адресе 127.0.0.1 . Для аутентификации и шифрования этих соединений используется сертификат TLS, зарегистрированный на ваше доменное имя. Локальное сопоставление доменного имени с адресом 127.0.0.1 позволяет использовать сертификат TLS для этих соединений локальной сети.
Сохраните и закройте файл.
Теперь ваш сервер имеет имя хоста, требуемое Jitsi для установки. На следующем шаге мы откроем порты брандмауэра, которые требуются Jitsi и установщику сертификата TLS.
Шаг 2 — Настройка брандмауэра
Выполняя указания руководства Начальная настройка сервера с Ubuntu 18.04, вы включили брандмауэр UFW и открыли порт SSH. Серверу Jitsi требуется открыть несколько портов, чтобы он мог взаимодействовать с вызывающими клиентами. Процессу установки TLS также требуется открыть порт, чтобы можно было провести аутентификацию запроса сертификата.
Открыты будут следующие порты:
- 80/tcp используется для запроса сертификата TLS.
- 443/tcp используется для создания веб-страницы конференции.
- 4443/tcp,10000/udp используется для приема и передачи шифрованного трафика вызова.
Запустите следующие команды ufw , чтобы открыть эти порты:
Проверьте их добавление с помощью команды ufw status :
Если эти порты открыты, вы увидите следующий вывод:
OutputStatus: active To Action From — —— —- OpenSSH ALLOW Anywhere 80/tcp ALLOW Anywhere 443/tcp ALLOW Anywhere 4443/tcp ALLOW Anywhere 10000/udp ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) 80/tcp (v6) ALLOW Anywhere (v6) 443/tcp (v6) ALLOW Anywhere (v6) 4443/tcp (v6) ALLOW Anywhere (v6) 10000/udp (v6) ALLOW Anywhere (v6)
Теперь сервер готов к установке Jitsi, которую мы выполним на следующем шаге.
Шаг 3 — Установка Jitsi Meet
На этом шаге мы добавим стабильный репозиторий Jitsi на ваш сервер, а затем установим пакет Jitsi Meet из этого репозитория. Так вы гарантируете, что всегда будете использовать последний стабильный пакет Jitsi Meet.
Вначале загрузите ключ Jitsi GPG с помощью утилиты загрузки wget :
Диспетчер пакетов apt будет использовать этот ключ GPG для проверки пакетов, которые вы будете загружать из репозитория Jitsi.
Затем добавьте загруженный ключ GPG в кольцо ключей apt , используя утилиту apt-key :
Теперь вы можете удалить файл ключа GPG, потому что он больше не требуется:
Теперь мы добавим репозиторий Jitsi на ваш сервер, создав новый файл источника, содержащий репозиторий Jitsi. Откройте и создайте новый файл с помощью редактора:
Добавьте эту строку в файл для репозитория Jitsi:
/etc/apt/sources.list.d/jitsi-stable.list
deb https://download.jitsi.org stable/
Сохраните файл и закройте редактор.
В заключение проведите обновление системы, чтобы получить список пакетов из репозитория Jitsi, а затем установите пакет jitsi-meet :
Во время установки jitsi-meet вам будет предложено ввести желаемое доменное имя (например, jitsi.your-domain ) для вашего экземпляра Jitsi Meet.
Примечание. Вы перемещаете курсор с поля hostname, чтобы выделить кнопку**клавишей TAB . Нажмите ENTER , когда**выделяется для отправки имени хоста.
Затем откроется новое диалоговое окно, где нужно указать, хотите ли вы, чтобы Jitsi создал и использовал самоподписанный сертификат TLS или использовал уже имеющийся сертификат:
Если у вас нет сертификата TLS для вашего домена Jitsi, выберите первую опцию,«Генерировать новый самоподписанный сертификат».
Теперь ваш экземпляр Jitsi Meet установлен с самоподписанным сертификатом TLS. При использовании такого сертификата в браузере будут выводиться предупреждения, поэтому на следующем шаге мы получим подписанный сертификат TLS.
Шаг 4 — Получение подписанного сертификата TLS
Jitsi Meet использует сертификаты TLS для шифрования трафика вызова, чтобы никто не мог прослушивать вызов через Интернет. Сертификаты TLS — это те же сертификаты, которые используются сайтами для активации URL с протоколом HTTPS.
Jitsi Meet предоставляет программу для автоматической загрузки сертификата TLS для вашего доменного имени. Эта программа использует утилиту Certbot. Вам нужно будет установить эту программу до того, как вы запустите скрипт установки сертификата.
Вначале добавьте в систему репозиторий Certbot, чтобы убедиться, что вы используете последнюю версию Certbot. Запустите следующую команду, чтобы добавить новый репозиторий и обновить систему:
Затем установите пакет certbot :
Теперь ваш сервер может спокойно запускать программу установки сертификата TLS, предоставленную Jitsi Meet:
При запуске скрипта откроется следующий диалог ввода адреса электронной почты:
Этот адрес электронной почты будет отправлен эмитенту сертификата https://letsencrypt.org и будет использоваться для уведомлений о безопасности и других вопросах, связанных с сертификатом TLS. Для продолжения установки необходимо ввести адрес электронной почты. После этого установка продолжится без дальнейших остановок.
После ее завершения ваш экземпляр Jitsi Meet будет настроен для использования подписанного сертификата TLS для вашего доменного имени. Обновление сертификатов также будет производиться автоматически, поскольку программа установки разместила по адресу /etc/cron.weekly/letsencrypt-renew скрипт обновления, который будет запускаться каждую неделю.
Программа установки TLS использовала порт 80 для проверки наличия у вас контроля вашего доменного имени. Теперь вы получили сертификат, и вашему серверу больше не нужно открывать порт 80 , потому что порт 80 используется для обычного трафика HTTP без шифрования. Jitsi Meet обслуживает сайт только по протоколу HTTPS через порт 443 .
Закройте этот порт в брандмауэре с помощью следующей команды ufw :
Теперь ваш сервер Jitsi Meet запущен и готов к тестированию. Откройте браузер и введите свое доменное имя. Вы сможете создать новую конференцию и пригласить других пользователей.
Конфигурация Jitsi Meet по умолчанию разрешает всем посетителям главной страницы вашего сервера Jitsi Meet создавать новые конференции. Для проведения конференции будут использоваться ресурсы вашего сервера, поэтому нежелательно давать такую возможность сторонним пользователям. На следующем шаге мы настроим ваш экземпляр Jitsi Meet так, чтобы конференции могли создавать только зарегистрированные пользователи.
Шаг 5 — Блокировка создания конференций
На следующем шаге мы настроим ваш сервер Jitsi Meet так, чтобы конференции могли создавать только зарегистрированные пользователи. Мы отредактируем файлы, котоыре были сгенерированы программой установки и настроены с использованием вашего доменного имени.
В следующих примерах мы будем использовать переменную your_domain вместо доменного имени.
Откройте sudo nano /etc/prosody/conf.avail/your_domain.cfg.lua в текстовом редакторе:
Отредактируйте эту строку:
/etc/prosody/conf.avail/your_domain.cfg.lua
. authentication = «anonymous» .
/etc/prosody/conf.avail/your_domain.cfg.lua
. authentication = «internal_plain» .
Эта конфигурация предписывает Jitsi Meet использовать аутентификацию с именем пользователя и паролем, прежде чем разрешить новому посетителю создавать конференции.
Затем добавьте в конец файла следующий раздел:
/etc/prosody/conf.avail/your_domain.cfg.lua
. VirtualHost «guest.your_domain» authentication = «anonymous» c2s_require_encryption = false
Эта конфигурация позволяет анонимным пользователям присоединяться к конференциям, созданным пользователем, прошедшим аутентификацию. Однако для входа у гостя должен иметься уникальный адрес и пароль конференции (если этот пароль задан).
Здесь вы добавили guest. перед доменным именем. Например, для jitsi.your-domain мы указываем put guest.jitsi.your-domain . Имя хоста guest. обычно используется Jitsi Meet для внутренних целей. Это имя не вводится в браузер, и не надо создавать для него запись DNS.
Откройте другой файл конфигурации по адресу /etc/jitsi/meet/your_domain-config.js в текстовом редакторе:
Отредактируйте эту строку:
/etc/jitsi/meet/your_domain-config.js
. // anonymousdomain: ‘guest.example.com’, .
/etc/jitsi/meet/your_domain-config.js
. anonymousdomain: ‘guest.your_domain’, .
Если вы используете имя хоста guest. your_domain , которое мы использовали ранее, эта конфигурация укажет Jitsi Meet, какое внутреннее имя хоста следует использовать для гостей, не прошедших аутентификацию.
Затем откройте /etc/jitsi/jicofo/sip-communicator.properties :
Добавьте следующую строку для завершения изменений конфигурации:
/etc/jitsi/jicofo/sip-communicator.properties
org.jitsi.jicofo.auth.URL=XMPP:your_domain
Эта конфигурация перенаправляет процессы Jitsi Meet на локальный сервер, который выполняет аутентификацию пользователя, которая теперь обязательна.
Ваш экземпляр Jitsi Meet теперь настроен, и конференции могут создавать только зарегистрированные пользователи. После создания конференции к ней может присоединиться кто угодно без регистрации. Для этого им потребуется уникальный адрес конференции и пароль, если он задан создателем конференции.
Мы настроили Jitsi Meet так, чтобы требовать аутентификацию пользователей при создании конференций, и теперь вам нужно зарегистрировать этих пользователей и их пароли. Для этого мы используем утилиту prosodyctl .
Запустите следующую команду, чтобы добавить на сервер пользователя:
Добавляемый здесь пользователь не является системным пользователем. Этот пользователь сможет только создать конференцию, но не сможет войти на ваш сервер через SSH.
Перезапустите процессы Jitsi Meet для загрузки новой конфигурации:
Теперь экземпляр Jitsi Meet будет требовать ввести имя пользователя и пароль в диалоге при создании конференции.
Теперь ваш сервер Jitsi Meet настроен и имеет защищенную конфигурацию.
Заключение
В этой статье мы рассказали о развертывании сервера Jitsi Meet, который вы можете использовать для хостинга защищенных частных видеоконференций. Теперь вы можете дополнить свой экземпляр Jitsi Meet инструкциями из Jitsi Meet Wiki.
If you’ve enjoyed this tutorial and our broader community, consider checking out our DigitalOcean products which can also help you achieve your development goals.
Источник: www.digitalocean.com