Собственный сервер видиоконференцсвязи в Docker
Jitsi Meet — приложение с открытым исходным кодом на базе WebRTC, предназначенное для проведения видеоконференций. Сервер Jitsi Meet создает виртуальные залы для видеоконференций на необходимое колличество человек.Преимущество конференции Jitsi заключается в том, что все ваши данные передаются только через ваш сервер, а комплексное шифрование TLS обеспечивает защиту от перехвата и несанкционированного прослушивания.
1. Установим Docker по инструкции здесь.
2. Установим Docker Compose по инструкции здесь.
3. Скачиваем последнюю версию образа доккера Джитси
wget -O /home/superuser/Загрузки/VKS.zip https://github.com/jitsi/docker-jitsi-meet/archive/refs/tags/stable-6726-1.zip
cd /home/superuser/Загрузки && unzip VKS.zip
5. Создадим корневой каталог jitsi
6. Скопируем содержимое папки VKS в каталог jitsi
cp -r /home/superuser/Загрузки/VKS/. /jitsi
7. Создадим окружение .env скопировав содержание файла env.example
cp /jitsi/env.example /jitsi/.env
9. Переходим в папку jitsi
10. Запустим исполнение скрипта.
chmod +x gen-passwords.sh && ./gen-passwords.sh
11. Внесем необходимые коррективы
cd /jitsi && docker-compose up -d
13. Проверим рабочие контейнеры
- сервер видеоконференцсвязи
- Астра Линукс Орёл
- Астра Линукс
- Astra Linux
- Astra linux docker
- jitsi meet
- jitsi
- jitsi meet docker
- jitsi astar linux
- jitsiastra linux docker
- docker
Тестировщик
Ваш комментарий будет опубликован только после одобрения модератором.
Размещение рекламных спам сообщений неэффективно, не утруждайтесь.
Установка и настройка сервера видеоконференцсвязи
Jitsi Meet — приложение с открытым исходным кодом на базе WebRTC, предназначенное для проведения видеоконференций. Сервер Jitsi Meet создает виртуальные залы для видеоконференций на необходимое колличество человек.Преимущество конференции Jitsi заключается в том, что все ваши данные передаются только через ваш сервер, а комплексное шифрование TLS обеспечивает защиту от перехвата и несанкционированного прослушивания.
1. Устанавливаем операционную систему Astra Linux CE по инструкции здесь и предоставим суперпользователю права SUDO, права добавляем под рутом.
usermod -a -G sudo superuser
2. Подключаем репозиторий Astra Linux Орёл
sudo nano /etc/apt/sources.list
Добавляем строку с расположением репозитория:
deb https://dl.astralinux.ru/astra/stable/2.12_x86-64/repository/ orel main contrib non-free
сохраняем файл нажав [Cntr+X] + Y + [Enter].
5.Установим обновленные пакеты:
6. Удостоверимся, что веб-сервер apache2 НЕ установлен, (будет использоваться веб-сервере nginx), иначе удаляем его:
7. Вначале установим имя хоста системы на доменное имя, которое мы будем использовать
hostnamectl set-hostname vks.entnet.ru
8. Подключаем репозиторий Debian9.
sudo apt -y install debian-archive-keyring dirmngr ca-certificates
sudo nano /etc/apt/sources.list
Добавляем ссылку на репозиторий Debian9.
deb https://mirror.yandex.ru/debian/ stretch main contrib non-free
Обновим данные о пакетах в репозиториях
9. Для установки сервера видеоконференцсвязи необходимо установить дополнительные пакеты из репозиториев Nginx, Jitsi, Java или скачать готовый архив для добавления его в свой репозиторий.
10. Распаковываем скачанный файл.
cd /home/superuser/Загрузки && 7z x VKS.7z
11. Даем права на исполнение.
sudo chmod 777 /home/superuser/Загрузки/VKS
12. Переходим в папку загрузки и запускаем установочный скрипт. Скриптом скачивается и устанавливается веб-сервер nginx, xmpp сервер prosody и комплект пакетов jitsi, а также зависимости.
cd /home/superuser/Загрузки/VKS
chmod +x vks-install.sh && ./vks-install.sh
Обязательно проверяем что бы правильно работал ваш сервер ДНС и имя сервера ВКС правильно публиковалось:
Если у вас не развернут сервер ДНС, то межете прописать имя сервера в файл etc/hosts.
13. В ходе установки будет запрос на ввод имени сервера.
14. Так же при установке будет запрошена необходимость создания ключа
15. Переходим к настройкам веб-сервера nginx.
15.1. Проверяем его работу прописав ip адрес хоста в адресной строке браузера, рабочий nginx должен выглядеть так:
15.2. Теперь нам необходимо настроить файл конфигурации нашей ВКС. Копируем образец конфигурационного файла сервера jitsi из папки /usr/share/jitsi-meet-web-config/jitsi-meet.example в папку /etc/nginx/sites-available, и переименовываем его по своему усмотрению, чтобы было понятно, что этот файл конфигурации наш, например vks.entnet.ru.conf командой в терминале:
sudo cp /usr/share/jitsi-meet-web-config/jitsi-meet.example /etc/nginx/sites-available/vks.entnet.ru.conf
15.3 Меняем в файле конфигурации vks.entnet.ru.conf имя сервера:
nano /etc/nginx/sites-available/vks.entnet.ru.conf
В разделе: # ssi on with javascript for multidomain variables in config.js ssi on.
В разделе: # colibri (JVB) websockets for jvb1.
15.4.Создаем симлинк на наш файл конфигурации:
sudo ln -s /etc/nginx/sites-available/ИМЯ.ФАЙЛА.КОНФИГУРАЦИИ.conf /etc/nginx/sites-enabled/ИМЯ.ФАЙЛА.КОНФИГУРАЦИИ.conf
sudo ln -s /etc/nginx/sites-available/vks.entnet.ru.conf /etc/nginx/sites-enabled/vks.entnet.ru.conf
16. Далее нам необходимо скопировать сертификаты ИМЯ-СЕРВЕРА.crt и ИМЯ-СЕРВЕРА.key, сформированные xmpp сервером prosody (неотъемлемая часть, необходимая для авторизации) из папки /var/lib/prosody/ в папку /etc/jitsi/meet/
sudo cp /var/lib/prosody/vks.entnet.ru.crt /etc/jitsi/meet/
sudo cp /var/lib/prosody/vks.entnet.ru.key /etc/jitsi/meet/
17. В эту же папку /etc/jitsi/meet/ необходимо из папки /usr/share/jitsi-meet-web-config скопировать файл config.js и переименовать его в ИМЯ-ХОСТА-config.js, по нашему же примеру vks.entnet.ru-config.js :
cp /usr/share/jitsi-meet-web-config/config.js /etc/jitsi/meet/vks.entnet.ru-config.js
а также заменим в нем строки:
domain: ‘hostname‘,
nano /etc/jitsi/meet/vks.entnet.ru-config.js
этого будет достаточно, чтобы сервер начал функционировать.
18. Перегружаем веб-серверы nginx и prosody:
systemctl restart prosody
19. Проверим работу сервера ВКС.
В строке браузера записываем путь https://vks.entnet.ru переходим по ней. Если все сделано по инструкции на экране отобразится стартовая страница.
20. Пропишем учетные записи модераторов и анонимную авторизацию
На следующем шаге мы настроим сервер Jitsi Meet так, чтобы конференцию могли создавать только зарегистрированные пользователи.
20.1. Редактируем следующий файл: /etc/prosody/conf.avail/vks.entnet.ru.cfg.lua
. authentication color: #ff0000;»>anonymous «.
. authentication color: #008000;»>internal_plain «.
Эта конфигурация предписывает Jitsi Meet использовать аутентификацию с именем пользователя и паролем, прежде чем разрешить посетителю создавать конференции.
20.2. Затем добавим в конец этого же файла /etc/prosody/conf.avail/vks.entnet.ru.cfg.lua следующий раздел:
.
VirtualHost "guest.vks.entnet.ru"
authentication = "anonymous"
c2s_require_encryption = false
Эта конфигурация позволяет анонимным пользователям присоединяться к конференциям.
20.3. Откроем файл конфигурации /etc/jitsi/meet/vks.entnet.ru-config.js в текстовом редакторе:
.
// anonymousdomain: ‘ guest.example.com ‘,
muc: ‘conference.exampl.com’
.
.
anonymousdomain: ‘ guest.vks.entnet.ru ‘,
muc: ‘conference.vks.entnet.ru’
.
Получится вот так:
20.4. Затем откроем /etc/jitsi/jicofo/sip-communicator.properties :
Добавим следующую строку для завершения изменений конфигурации:
org.jitsi.jicofo.auth.URL=XMPP:vks.entnet.ru
Ваш экземпляр Jitsi Meet теперь настроен, и конференции могут создавать только зарегистрированные пользователи. После создания конференции к ней может присоединиться кто угодно без регистрации.
20.5. Мы настроили Jitsi Meet так, чтобы требовать аутентификацию пользователей при создании конференций, и теперь нам нужно зарегистрировать модераторов и их пароли. Для этого мы используем утилиту prosodyctl:
Запустите следующую команду, чтобы добавить на сервер модератора:
prosodyctl register user vks.entnet.ru password
Добавляемый пользователь может создать и управлять конференцией.
21. Перезапустим все процессы Jitsi Meet для загрузки новой конфигурации:
systemctl restart prosody.service
systemctl restart jicofo.service
systemctl restart jitsi-videobridge2.service
Теперь ваш сервер Jitsi Meet настроен и имеет защищенную конфигурацию.
22. Запуск видеоконференции.
Для подключения к серверу видеоконференцсвязи в адресной строке браузера набтраем https://vks.entnet.ru
В строке start meeting присваиваем имя нашей конференции и нажимаем на кнопку start meeting.
После создания конференции необходимо подвердить что вы являетесь модератором
После подтверждения будет запрошен логиг и пароль который мы предварительно создали командой
prosodyctl register user vks.entnet.ru password
где Логин: user Пароль: password
После удачной авторизации вы находитесь в комнате управления конференцией.
Приглашение пользователей осуществляется по ссылке http://vks.entnet.ru/entnet
23. Для того что бы все участники конференции обязательно вносили данные участника необходимо провести дополнительные настройки:
в файле etc/jitsi/meet/vks.entnet.ru-config.js раскоментировать строку requireDisplayName: true
nano /etc/jitsi/meet/vks.entnet.ru-config.js
После проведенной настройки при подключении всех пользователей будет выводиться запрос: