Перейти к основному содержимому
Jitsi Meet
Последнее изменение:

Jitsi Meet

Jitsi Meet — это полностью зашифрованное решение с открытым исходным кодом для организации видеоконференций.

Можно создать облачный сервер с готовым приложением Jitsi Meet.

Создать облачный сервер с Jitsi Meet

Можно создать облачный сервер с Jitsi Meet:

  • с доступом из интернета. Для этого нужно создать приватную подсеть и подключить публичный IP-адрес — это можно сделать при создании сервера. После создания сервера автоматически выпустится бесплатный TLS-сертификат от Let’s Encrypt® для домена, который вы укажете. Для выпуска сертификата нужно добавить A-запись для домена и указать в значении записи публичный IP-адрес сервера. Домен можно добавить в DNS-хостинг Selectel (actual);
  • в приватной подсети без доступа из интернета. После создания сервера не будет выпущен TLS-сертификат от Let’s Encrypt®, но вы можете самостоятельно добавить пользовательский сертификат.

Для настройки Jitsi Meet при создании сервера нужно указать user data — пользовательские параметры конфигурации операционной системы сервера.

Для сервера с доступом из интернета нужно будет настроить обязательную авторизацию и создать пользователей с возможностью создания конференции⁠. Для сервера в приватной подсети авторизацию можно отключить — доступ к Jitsi Meet можно будет получить по доменному имени.

  1. В панели управления перейдите в раздел Облачная платформаСерверы.

  2. Нажмите Создать сервер.

  3. В блоке Имя и расположение:

    3.1. В поле Имя введите имя сервера. Оно будет установлено как имя хоста в операционной системе.

    3.2. В полях Регион и Пул выберите регион и сегмент пула, в котором будет создан сервер. От сегмента пула зависит список доступных конфигураций сервера и стоимость ресурсов. После создания сервера изменить сегмент пула нельзя.

  4. В блоке Источник выберите источник, из которого будет создан сервер.

    Нажмите на имя источника по умолчанию, откройте вкладку Приложения, выберите Jitsi <version> и нажмите Выбрать.

  5. В блоке Конфигурация выберите конфигурацию сервера от 4 vCPU, RAM от 8 ГБ и размером загрузочного диска от 10 ГБ:

    • фиксированную конфигурацию — линейки, в которых зафиксировано соотношение ресурсов;
    • или произвольную конфигурацию, в которой можно указать любое соотношение ресурсов.

    В конфигурациях используются разные процессоры в зависимости от линейки и сегмента пула.

    5.1. Чтобы выбрать фиксированную конфигурацию, нажмите Фиксированная, откройте вкладку с нужной линейкой и выберите конфигурацию.

    5.2. Чтобы выбрать произвольную конфигурацию, нажмите Произвольная, укажите количество vCPU и размер RAM.

    5.3. Чтобы в качестве загрузочного диска сервера выбрать локальный диск, отметьте чекбокс Локальный SSD NVMe диск. Чтобы в качестве загрузочного диска выбрать сетевой диск, не отмечайте чекбокс.

    Объем оперативной памяти, который выделяется серверу, может быть меньше указанного в конфигурации — ядро операционной системы резервирует часть оперативной памяти в зависимости от версии ядра и дистрибутива. Выделенный объем на сервере можно проверить с помощью команды sudo dmesg | grep Memory.

    После создания сервера можно изменить конфигурацию.

  6. Если вы не отметили чекбокс Локальный SSD NVMe диск на шаге 5.3., в качестве загрузочного диска сервера будет использоваться первый указанный сетевой диск. В блоке Диски:

    6.1. В поле Тип диска выберите тип сетевого загрузочного диска.

    6.2. Укажите размер сетевого загрузочного диска в ГБ или ТБ. Учитывайте лимиты сетевых дисков на максимальный размер.

  7. Опционально: добавьте дополнительные сетевые диски сервера. В блоке Диски:

    7.1. В поле Тип диска выберите тип сетевого диска.

    7.2. Укажите размер сетевого диска в ГБ или ТБ. Учитывайте лимиты сетевых дисков на максимальный размер.

    7.3. Чтобы добавить другой дополнительный диск, нажмите Добавить, выберите тип диска и укажите его размер.

    После создания сервера можно отключить от него дополнительные диски или подключить новые.

  8. В блоке Сеть:

    • чтобы создать приватную подсеть с доступом из интернета и статический публичный IP-адрес, в поле Подсеть выберите Приватная + 1 публичный IP. Автоматически будут созданы приватная сеть nat, приватная подсеть, роутер router-nat и публичный IP-адрес.

      Если приватная подсеть и облачный роутер, подключенный к внешней сети, созданы, в поле Подсеть выберите Приватная + 1 публичный IP, в поле Приватная подсеть выберите созданную подсеть, в поле Приватный IP укажите приватный IP-адрес сервера. Если публичный IP-адрес создан, нажмите Подключить существующий и выберите публичный IP-адрес;

    • чтобы создать приватную подсеть без доступа из интернета, в поле Подсеть выберите Приватная. Опционально: измените сетевые настройки по умолчанию, для этого в поле CIDR подсети укажите CIDR подсети, включите или выключите тумблер DHCP, в поле Шлюз укажите IP-адрес шлюза по умолчанию, в поле Подсеть будет создана в сети выберите Новая сеть и введите имя сети.

      Если приватная подсеть создана, в поле Подсеть выберите существующую подсеть и в поле Приватный IP укажите приватный IP-адрес сервера.

  9. В блоке Доступ:

    9.1. Разместите на сервере SSH-ключ для безопасного подключения.

    Чтобы добавить в облачную платформу новый SSH-ключ, нажмите Добавить SSH-ключ, введите имя ключа, вставьте публичный SSH-ключ в формате OpenSSH и нажмите Добавить.

    Если SSH-ключ добавлен в облачную платформу, в поле SSH-ключ выберите существующий ключ.

    9.2. Опционально: в поле Пароль для «root» скопируйте пароль пользователя root (пользователь с неограниченными правами на все действия над системой). Сохраните пароль в безопасном месте и не передавайте в открытом виде.

  10. В блоке Дополнительные настройки:

    10.1. Опционально: если вы планируете создать несколько серверов и хотите повысить отказоустойчивость инфраструктуры, добавьте сервер в группу размещения. Чтобы создать новую группу, нажмите Создать группу, введите имя группы и выберите политику размещения на разных хостах:

    • желательно — soft-anti-affinity. Система постарается разместить серверы на разных хостах. Если при создании сервера не будет подходящего хоста, он будет создан на том же хосте;
    • обязательно — anti-affinity. Серверы в группе обязательно располагаются на разных хостах. Если при создании сервера не будет подходящего хоста, сервер не будет создан.

    Если группа создана, в поле Группа размещения выберите группу размещения.

    10.2. Опционально: добавьте теги сервера, чтобы добавить дополнительную информацию или фильтровать серверы в списке. Автоматически добавляются теги операционной системы и конфигурации. Чтобы добавить новый тег, в поле Теги введите тег.

  11. В блоке Автоматизация в поле User data вставьте скрипт, который выполнится при загрузке системы:

    #cloud-config

    write_files:
    - path: "/opt/gomplate/values/user-values.yml"
    permissions: "0644"
    content: |
    jitsi_HTTP_PORT: "80"
    jitsi_HTTPS_PORT: "443"
    jitsi_TZ: "<time_zone>"
    jitsi_PUBLIC_URL: "<jitsi_meet_public_url>"
    jitsi_IP: "<public_ip_address>"
    jitsi_ENABLE_HTTP_REDIRECT: "1"
    letsencrypt:
    enable: true
    letsencryptDomain: "<example.com>"
    letsencryptEmail: "<root@example.com>"
    auth:
    enable: true

    Укажите:

    • <time_zone> — часовой пояс, например UTC;
    • <jitsi_meet_public_url> — публичный URL Jitsi Meet в формате https://jitsi.example.com;
    • <public_ip_address> — публичный IP-адрес, который вы указали на шаге 8. Можно посмотреть в панели управления в разделе Облачная платформаСеть → вкладка Публичные IP-адреса;
    • letsencrypt: enable: true — параметр для автоматического выпуска TLS-сертификата от Let’s Encrypt®;
    • <example.com> — домен для доступа к Jitsi Meet. Для домена нужно добавить A-запись и указать в значении записи публичный IP-адрес, который вы указали на шаге 8. Если домен добавлен в DNS-хостинг Selectel (actual), используйте инструкцию Добавить ресурсную запись. После создания сервера для домена автоматически выпустится TLS-сертификат от Let’s Encrypt®;
    • <root@example.com> — электронная почта администратора Jitsi Meet для создания аккаунта и получения уведомлений Let’s Encrypt®;
    • auth: enable: true — параметр для включения обязательной авторизации для создания конференции.
  12. Проверьте цену облачного сервера.

  13. Нажмите Создать.

Создать пользователя с возможностью создания конференции

Если у облачного сервера с Jitsi Meet есть доступ из интернета, создайте пользователей, которые смогут создавать видеоконференции.

  1. Подключитесь к облачному серверу.

  2. Авторизуйтесь как пользователь root.

  3. Создайте пользователя с возможностью создания конференции:

    docker exec jitsi-prosody-1 prosodyctl --config /config/prosody.cfg.lua register <username> meet.jitsi <password>

    Укажите:

    • <username> — логин нового пользователя;
    • <password> — пароль нового пользователя.

Получить доступ к Jitsi Meet

Если у облачного сервера с Jitsi Meet нет доступа из интернета, можно получить доступ к Jitsi Meet по доменному имени. Для этого:

  • создайте на локальном DNS-сервере A-запись для приватного URL Jitsi Meet в формате https://meet.local;
  • или добавьте А-запись в файл hosts на клиентах.

Добавить пользовательский сертификат

К облачному серверу с Jitsi Meet можно добавить пользовательский сертификат.

  1. Если вы используйте полную цепочку сертификатов и приватный ключ в формате .pem, переименуйте их в cert.crt и cert.key.
  2. Подключитесь к облачному серверу.
  3. Авторизуйтесь как пользователь root.
  4. Скопируйте файлы cert.crt и cert.key в папку /opt/jitsi/data/.jitsi-meet-cfg/web/keys
  5. Выполните программную перезагрузку⁠ облачного сервера.