Добро пожаловать в это руководство по установке Jitsi на AlmaLinux 9. Jitsi – это автономная платформа видеоконференцсвязи с открытым исходным кодом, которая предоставляет высококачественные видео, аудио и возможности чата. Он предлагает альтернативу проприетарным системам видеоконференцсвязи, предоставляя вам полный контроль над вашими данными и возможностями настройки. Эта статья проведет вас по установке и настройке Jitsi на AlmaLinux 9, обеспечивая безопасную и эффективную настройку для удовлетворения потребностей вашей команды в общении.
Необходимые условия для установки Jitsi на AlmaLinux 9:
- AlmaLinux 9 VPS
- Не менее 2 ГБ оперативной памяти
- ROOT-доступ по SSH или системный пользователь с привилегиями sudo
Шаг 1. Обновите системные пакеты
Для начала войдите на свой VPS AlmaLinux 9 по SSH:
ssh root@IP_Address -p Port_number
Замените ‘IP_Address’ и ‘Port_number’ фактическим IP-адресом вашего сервера и номером SSH-порта. При необходимости замените ‘root’ именем пользователя вашей учетной записи sudo.
После входа в систему вы должны убедиться, что все пакеты AlmaLinux OS, установленные на сервере, обновлены. Вы можете сделать это, выполнив следующие команды:
dnf update -y && dnf upgrade -y
Шаг 2. Установка зависимостей:
После этого установите необходимые зависимости на свой сервер. Выполните следующую команду, чтобы установить эти зависимости:
dnf install git gcc redhat-rpm-config libxslt-devel bzip2-devel openldap-devel libjpeg-devel freetype-devel curl unzip openssl-devel wget yum-utils make libffi-devel zlib-devel tar
Шаг 3. Установите Docker.:
Мы установим Docker из репозитория AlmaLinux. Для этого выполните следующую команду, чтобы добавить репозиторий:
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
Затем обновите кэш метаданных:
dnf makecache
Затем установите docker, используя следующую команду:
dnf install docker-ce --nobest
Затем запустите и включите службу Docker с помощью следующей команды. Эта команда запустит Docker и настроит его на автоматический запуск во время загрузки.
systemctl enable –now docker
Шаг 4. Установите Docker Compose:
Далее вам также нужно будет установить Docker Compose в вашей системе.
Вы можете загрузить последнюю версию двоичного пакета Docker compose в каталог /usr/local / bin с помощью следующей команды:
curl -L https://github.com/docker/compose/releases/download/v2.29.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
Далее измените разрешение загруженного двоичного файла с помощью следующей команды:
chmod +x /usr/local/bin/docker-compose
Затем проверьте установленную версию Docker Compose, используя следующую команду:
docker-compose --version
Вы должны увидеть следующий результат:
# docker-compose --version Docker Compose version v2.29.0
Шаг 5. Установите и настройте Jitsi
Мы настраиваем экземпляр Jitsi с помощью контейнера Docker. Сначала загрузите Jitsi Meet для Docker с помощью следующей команды:
wget -O jitsi.zip $(curl -s https://api.github.com/repos/jitsi/docker-jitsi-meet/releases/latest | grep 'zip' | cut -d\" -f4)
Далее извлеките загруженный файл, используя следующую команду:
unzip jitsi.zip
Переименуйте извлеченный каталог в Jitsi с помощью следующей команды:
mv jitsi-docker-jitsi-meet-5a5b8f9/ jitsi/
Перед запуском Jitsi нам необходимо настроить его для вашего экземпляра. Мы рекомендуем создать резервную копию этой конфигурации по умолчанию перед внесением изменений:
cd jitsi/ cp env.example .env
После создания резервной копии конфигурации по умолчанию вы можете получить доступ к файлу по умолчанию и настроить его для вашего экземпляра.
nano .env
Добавьте следующие строки:
PUBLIC_URL=https://jitsi.yourdomain.ru DISABLE_HTTPS=1 ENABLE_LETSENCRYPT=0
Сохраните и закройте файл.
Затем установите надежные пароли в разделе безопасности файла .env, запустив следующий скрипт bash:
./gen-passwords.sh
Далее создайте необходимые каталоги для Jitsi, выполнив следующую команду:
mkdir -p ~/.jitsi-meet-cfg/{web,transcripts,prosody/config,prosody/prosody-plugins-custom,jicofo,jvb,jigasi,jibri}
Создайте образ Jitsi meet Docker с помощью следующей команды:
docker compose up -d
Вы должны увидеть следующий результат:
#docker compose up -d [+] Running 4/4 ✔ Container jitsi-docker-jitsi-meet-5a5b8f9-prosody-1 Started 3.6s ✔ Container jitsi-docker-jitsi-meet-5a5b8f9-jvb-1 Started 1.6s ✔ Container jitsi-docker-jitsi-meet-5a5b8f9-jicofo-1 Started 1.5s ✔ Container jitsi-docker-jitsi-meet-5a5b8f9-web-1 Started 2.3s
Это загрузит образ Jitsi из Docker hub и запустит контейнеры. Вы можете проверить все запущенные контейнеры с помощью следующей команды:
docker ps
Было бы лучше, если бы вы получили следующий результат:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 3484e9f8060c jitsi/web:stable-9584-1 "/init" 9 seconds ago Up 7 seconds 0.0.0.0:8000->80/tcp, :::8000->80/tcp, 0.0.0.0:8443->443/tcp, :::8443->443/tcp jitsi-docker-jitsi-meet-5a5b8f9-web-1 949dfeb9481f jitsi/jvb:stable-9584-1 "/init" 7 seconds ago Up 1 second 127.0.0.1:8080->8080/tcp, 0.0.0.0:10000->10000/udp, :::10000->10000/udp jitsi-docker-jitsi-meet-5a5b8f9-jvb-1 b1566723d747 jitsi/jicofo:stable-9584-1 "/init" 7 seconds ago Up 1 second 127.0.0.1:8888->8888/tcp jitsi-docker-jitsi-meet-5a5b8f9-jicofo-1 858fa232c1d2 jitsi/prosody:stable-9584-1 "/init" 9 seconds ago Up 7 seconds 5222/tcp, 5269/tcp, 5280/tcp, 5347/tcp jitsi-docker-jitsi-meet-5a5b8f9-prosody-1
На этом этапе контейнер Jitsi Meet запущен и работает на порту 8000.
Шаг 6. Настройка обратного прокси
Веб-сервер требуется, если вы хотите использовать доменное имя вместо IP-адреса вашего сервера. В этой статье мы установим и будем использовать Nginx. Выполните следующую команду для установки nginx:
dnf install -y nginx
Далее запустите и включите службу Nginx, используя следующую команду. Это немедленно запустит Nginx и настроит его на автоматический запуск при загрузке.
systemctl enable --now nginx
Далее создайте серверный блок Nginx:
nano /etc/nginx/conf.d/jitsi.conf
Добавьте следующие строки:
upstream backend { server 127.0.0.1:8000; keepalive 32; } server { server_name jitsi.yourdomain.ru; location /xmpp-websocket { # Тайм-аут, если реальный сервер мертв proxy_next_upstream error timeout invalid_header http_500 http_502 http_503; # Настройки подключения к прокси-серверу proxy_buffers 32 4k; proxy_connect_timeout 240; proxy_headers_hash_bucket_size 128; proxy_headers_hash_max_size 1024; proxy_http_version 1.1; proxy_read_timeout 240; proxy_redirect http:// ws://; proxy_send_timeout 240; # Настройки кэша прокси-сервера и файлов cookie proxy_cache_bypass $cookie_session; proxy_no_cache $cookie_session; # Настройки заголовка прокси-сервера proxy_set_header Early-Data $ssl_early_data; proxy_set_header Host $host; proxy_set_header Upgrade $http_upgrade; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Proto https; proxy_set_header X-Forwarded-Ssl on; proxy_set_header X-Real-IP $remote_addr; proxy_pass http://backend/xmpp-websocket; proxy_set_header Connection "Upgrade"; tcp_nodelay on; } location / { client_max_body_size 50M; proxy_set_header X-Frame-Options SAMEORIGIN; proxy_buffers 256 16k; proxy_buffer_size 16k; proxy_read_timeout 600s; proxy_cache_revalidate on; proxy_cache_min_uses 2; proxy_cache_use_stale timeout; proxy_cache_lock on; proxy_http_version 1.1; proxy_pass http://backend; } listen 80; }
Обязательно обновите “jitsi.yourdomain.ru” в своем доменном имени.
Сохраните и закройте файл, затем перезагрузите службу nginx, чтобы применить изменения:
systemctl reload nginx
Шаг 7. Защитите Jitsi с помощью Let’s Encrypt
Ваш веб-сайт в настоящее время работает по протоколу HTTP. Установка бесплатного SSL-сертификата Let’s Encrypt обеспечит безопасную работу нашего веб-сайта по протоколу HTTPS. Перед получением сертификата мы должны установить Python certbot для Nginx.
dnf install -y certbot python3-certbot-nginx python3-certbot
После успешной установки certbot мы можем получить SSL-сертификат.
Чтобы запустить certbot с плагином Nginx, указав имя вашего домена, выполните следующую команду:
certbot --nginx -d jitsi.yourdomain.ru
После выполнения этой команды вам необходимо будет предоставить несколько сведений, включая ваш адрес электронной почты, согласие с условиями, ваши предпочтения в отношении предоставления общего доступа к своему адресу электронной почты и любые варианты перенаправления.
Saving debug log to /var/log/letsencrypt/letsencrypt.log Plugins selected: Authenticator nginx, Installer nginx Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): admin@yourdomain.ru - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must agree in order to register with the ACME server at https://acme-v02.api.letsencrypt.org/directory - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (A)gree/(C)ancel: A - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Would you be willing to share your email address with the Electronic Frontier Foundation, a founding partner of the Let's Encrypt project and the non-profit organization that develops Certbot? We'd like to send you email about our work encrypting the web, EFF news, campaigns, and ways to support digital freedom. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: N Obtaining a new certificate Performing the following challenges: http-01 challenge for jitsi.yourdomain.ru Waiting for verification... Cleaning up challenges Deploying Certificate to VirtualHost /etc/nginx/conf.d/jitsi.conf Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: No redirect - Make no further changes to the webserver configuration. 2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you're confident your site works on HTTPS. You can undo this change by editing your web server's configuration. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2 Redirecting all traffic on port 80 to ssl in /etc/nginx/conf.d/jitsi.conf
Теперь вы можете получить доступ к Jitsi по адресу http://jitsi.yourdomain.ru используя свое доменное имя, начните работать над своим проектом. Официальная документация предоставляет дополнительную информацию о Jitsi, его функциях и конфигурации.
Конечно, вам не обязательно устанавливать Jitsi на AlmaLinux 9, если вы используете одну из наших служб VPS-хостинга AlmaLinux, в этом случае вы можете просто попросить наших опытных администраторов Linux установить и настроить Jitsi на AlmaLinux 9 для вас. Они доступны 24 × 7 и немедленно выполнят ваш запрос.
PS. Если вам понравился этот пост о том, как установить Jitsi на AlmaLinux 9, пожалуйста, поделитесь им со своими друзьями в социальных сетях или просто оставьте комментарий в разделе комментариев. Спасибо