JITSI deployment: различия между версиями

Материал из wiki
 
Строка 75: Строка 75:
Далее, следует обновить список пакетов:
Далее, следует обновить список пакетов:
  apt update
  apt update


=== Установка JITSI ===
=== Установка JITSI ===

Текущая версия от 12:48, 3 февраля 2025

Системные требования

  1. Операционная система: Ubuntu Server 22.04
  2. ОЗУ: 4 ГБ
  3. Процессор: 2 ядра
  4. Дисковое пространство: 20 ГБ минимум

Порядок развертывания

После установки Ubuntu Server не обязательно сразу обновлять систему при помощи apt update и apt-get dist-upgrade

Открытие портов брандмауэра

Для работы Jitsi Meet на сервере должны быть открыты несколько обязательных портов:

  • 80/TCP – Если используется Let’s Encrypt, этот порт нужен для выпуска и обновления TLS-сертификата.
  • 443/TCP – Для общего доступа к Jitsi Meet, в том числе через браузер.
  • 10000/UDP – Для проведения аудио/видео конференций.
  • 5349/TCP – Резервный порт для аудио/видео конференций на случай, если UPD-порт 10000 заблокирован.

Для открытия портов необходимо последовательно выполнить следующие команды:

 iptables -I INPUT -p tcp --match multiport --dports 80,443 -j ACCEPT


 iptables -I INPUT -p tcp --dport 10000 -j ACCEPT


 iptables -I INPUT -p tcp --dport 5349 -j ACCEPT

Для того, чтобы эти настройки сохранились, необходимо установить iptables-persistent. Для этого следует последовательно выполнить следующие команды:

apt install iptables-persistent


netfilter-persistent save

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

В качестве доменного имени будет использоваться chat-calls.gk-rte.ru. Перед дальнейшей настройкой необходимо указать это имя на DNS-сервере и на прокси-сервере.

Для установки нужного доменного имени необходимо выполнить команду

hostnamectl set-hostname chat-calls.gk-rte.ru

Далее, необходимо в файле /etc/hosts/ указать соответствие внешнего адреса маршрутизатора к chat-calls.gk-rte.ru. Для этого в этот файл нужно вписать следующее:

5.61.10.102 chat-calls.gk-rte.ru

Настройка репозиториев перед установкой JISTSI

После того, как у нас настроен DNS и прокси-серверы, открыты порты, установлено доменное имя сервера и прописан локальный DNS, можно переходить к установке JITSI.

Для начала следует добавить репозиторий universe. Это делается при помощи команды

apt-add-repository universe

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

curl -sL https://prosody.im/files/prosody-debian-packages.key | sudo tee /etc/apt/keyrings/prosody-debian-packages.key


echo "deb [signed-by=/etc/apt/keyrings/prosody-debian-packages.key] http://packages.prosody.im/debian $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/prosody-debian-packages.list


apt install lua5.2

В процессе могут появляться не читаемые символы. Это нормально.

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

curl -sL https://download.jitsi.org/jitsi-key.gpg.key | gpg --dearmor | sudo tee /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

В процессе могут появляться не читаемые символы. Это нормально.

Далее, следует обновить список пакетов:

apt update

Установка JITSI

Для установки JITSI необходимо воспользоваться командой:

sudo apt install -y jitsi-meet lua-unbound

Далее, установщик покажет поле ввода, куда необходимо ввести домен, на котором будет располагаться JITSI. Это показано на рисунке 1.

никакой
Рис. 1 - Ввод доменного имени

После этого, появится второе окно, где надо будет выбрать способ получения сертификата, как показано на рисунке 2. В этом пункте необходимо выбрать "Generate a new self-signed certificate".

Sertificate choose.png
Рис. 2 - Выбор способа получения сертификата

Получение сертификата через Let's Encrypt

Для получения сертификата через Let's Encrypt необходимо установить Certbot. Это делается при помощи команды:

snap install --classic certbot

После этого, необходимо получить сам сертификат при помощи команды:

certbot --nginx -d chat-calls.gk-rte.ru

На этом все, можно выводить chat-calls.gk-rte.ru из внешней сети