Jitsi-meet (Русский)

From ArchWiki
Jump to navigation Jump to search

Tango-preferences-desktop-locale-modified.pngПеревод этой статьи или раздела не отражает оригинальное содержание.Tango-preferences-desktop-locale-modified.png

Причина: Данная статья содержит пунктуационные и стилистические ошибки (см. Help:Style), а также не переведена до конца, см. оригинал (англ.). (Discuss)

Jitsi - это набор проектов с открытым исходным кодом, который позволяет легко создавать и развертывать безопасные решения для видеоконференций. В основе Jitsi находятся Jitsi Videobridge и Jitsi Meet, которые позволяют проводить конференции в Интернете, в то время как другие проекты сообщества предоставляют другие функции, такие как аудио, набор номера, запись и одновременная трансляция.

Установка

Установите jitsi-meet-binAUR, jitsi-videobridge-binAUR и jicofo-binAUR.

Также можно установить jitsi-meet-gitAUR, jitsi-videobridgeAUR и jicofo-gitAUR.

Примечание: Пути и службы конфигурации в пакетах jitsi-meet-gitAUR, jitsi-videobridgeAUR и jicofo-gitAUR отличаются от путей и служб, используемых в пакетах jitsi-meet-binAUR, jitsi-videobridge-binAUR и jicofo-binAUR.
Примечание: руководство по ручной установке[устаревшая ссылка 2020-08-02] уже не зависит от ОС, единственное изменение, которое вам нужно сделать, это доверительный сертификат, который вы можете сделать так:
trust anchor /var/lib/prosody/auth.meet.example.com.crt

Конфигурация

Конфигурация для пакетов из git

Если имя вашего сервера example.com, то типичным выбором для вашего jitsi будет meet.example.com. Вам нужно будет обновить запись DNS вашего сервера с записью meet. Остальная часть предполагает, что вы это сделали.

Также у вас должны быть сертификаты SSL/TLS для вашего домена meet.example.com, например, см. certbot.

Остальные инструкции в bash поясняют, что нужно заменить. Выполнение команд в оболочке bash с правами суперпользователя должны выполнить установку.

Замените доменное имя на свое собственное:

export JITSIFQDN=meet.example.com

Укажите правильный путь к сгенерированным сертификатам:

export JITSIFQDN_CRT=/etc/letsencrypt/live/meet.example.com/fullchain.pem
export JITSIFQDN_KEY=/etc/letsencrypt/live/meet.example.com/privkey.pem

Пароли нужны. Мы настроили некоторые переменные оболочки, чтобы хранить их для дальнейшего использования. Если хотите Вы можете заменить $(mktemp XXXXXXX) собственными паролями, но сгенерированные значения mktemp, вполне должны подойти.

export SECRET1=$(mktemp -u XXXXXXXX)
export SECRET2=$(mktemp -u XXXXXXXX)
export SECRET3=$(mktemp -u XXXXXXXX)

Настроить prosody

prosody является обязательным условием, и вам нужно будет добавить в него конфигурацию для ваших служб Jitsi. Если у вас еще не настроен сервер prosody, установите prosody и lua52-sec прямо сейчас. Остальная часть конфигурации prosody предполагает, что у вас установлен prosody локально.

Сначала убедитесь, что есть подкаталог для хранения пользовательских конфигураций и что просодия загружает его:

mkdir -p /etc/prosody/conf.d
cat >> /etc/prosody/prosody.cfg.lua <<===
  Include "conf.d/*.cfg.lua"
===

Создайте конфигурационный файл prosody для вашего домена:

cat > /etc/prosody/conf.d/$JITSIFQDN.cfg.lua <<===
VirtualHost "${JITSIFQDN}"
    authentication = "anonymous"
    ssl = {
        key = "/var/lib/prosody/${JITSIFQDN}.key";
        certificate = "/var/lib/prosody/${JITSIFQDN}.crt";
    }
    modules_enabled = {
        "bosh";
        "pubsub";
    }
    c2s_require_encryption = false

VirtualHost "auth.${JITSIFQDN}"
    ssl = {
        key = "/var/lib/prosody/auth.${JITSIFQDN}.key";
        certificate = "/var/lib/prosody/auth.${JITSIFQDN}.crt";
    }
    authentication = "internal_plain"
    admins = { "focus@auth.${JITSIFQDN}" }

Component "conference.${JITSIFQDN}" "muc"

Component "jitsi-videobridge.${JITSIFQDN}"
    component_secret = "${SECRET1}"

Component "focus.${JITSIFQDN}"
    component_secret = "${SECRET2}"
===

Создайте сертификаты, которые нужны prosody. Это интерактивно:

prosodyctl cert generate $JITSIFQDN
prosodyctl cert generate auth.$JITSIFQDN

Зарегистрировать пользователя focus:

prosodyctl register focus auth.$JITSIFQDN $SECRET3

Доверительный сертификат:

trust anchor /var/lib/prosody/auth.$JITSIFQDN.crt

Затем перезапустите службы prosody (или запустите/включите prosody, если она только что была установлена).

Настроить jitsi-videobridge

Конфигурация для jitsi-videobridge

cat > /etc/jitsi-videobridge/jitsi-videobridge.conf <<===
flags="--host=localhost --domain=${JITSIFQDN} --port=5347 --secret=${SECRET1}"
===

Если вы хотите, чтобы настройки логирования и sip-коммуникатора находились в одной папке, вы можете сделать следующее

cat >> /etc/jitsi-videobridge/jitsi-videobridge.conf <<===
VIDEOBRIDGE_DEBUG_OPTIONS="-Djava.util.logging.config.file=/etc/jitsi-videobridge/logging.properties -Dnet.java.sip.communicator.SC_HOME_DIR_NAME=jitsi-videobridge -Dnet.java.sip.communicator.SC_HOME_DIR_LOCATION=/etc 
===
cp /opt/jitsi-videobridge/lib/logging.properties /etc/jitsi-videobridge/logging.properties

cat > /etc/jitsi-videobridge/sip-communicator.properties <<===
org.jitsi.videobridge.AUTHORIZED_SOURCE_REGEXP=focus@auth.${JITSIFQDN}/.*
org.jitsi.impl.neomedia.transform.srtp.SRTPCryptoContext.checkReplay=false
org.jitsi.videobridge.TCP_HARVESTER_PORT=4443
===

Затем запустите/включите службу jitsi-videobridge.

Настроить jicofo

cat > /etc/jicofo/jicofo.conf <<===
flags="--host=localhost --domain=${JITSIFQDN} --secret=${SECRET2} --user_domain=auth.${JITSIFQDN} --user_name=focus --user_password=${SECRET3}"
===

Затем запустите/включите службу jicofo.

Настроить jitsi-meet

cp /opt/jitsi-meet/config.js /opt/jitsi-meet/config.js.orig
cat > /opt/jitsi-meet/config.js <<===
var domainroot = "${JITSIFQDN}" 
var config = { 
       hosts: { 
               domain: domainroot, 
               muc: 'conference.'+domainroot, 
               bridge: 'jitsi-videobridge.'+domainroot,
               focus: 'focus.'+domainroot
       },
       useNicks: false,
       bosh: '//'+domainroot+'/http-bind',
}
===

Настроить nginx

Вот минимальная рекомендуемая конфигурация nginx HTTPS из https://ssl-config.mozilla.org/#server=nginx&version=1.16.1&config=intermediate&openssl=1.1.1f&guideline=5.4 и минимальная конфигурация рекомендуемая в документации Jitsi-Meet. Хотя эта конфигурация будет работать нормально, вы возможно захотите адаптировать ее к своему собственному серверу.

Jitsi-meet#Configure nginx

Советы и хитрости

Запуск за NAT

Следующие порты должны быть перенаправлены на ваш сервер:

HTTPS:

  • TCP/443

Jitsi Videobridge:

  • TCP/4443
  • UDP/10000

Смотрите также