Установка и активация WCS¶
Установочные архивы WCS доступны для загрузки по ссылке
Загрузка установочного архива возможна непосредственно на сервер при помощи wget
, например
Установка¶
Для установки WCS необходимо распаковать архив и запустить скрипт установки install.sh
:
tar -xvzf FlashphonerWebCallServer-5.2.XXXX.tar.gz
cd FlashphonerWebCallServer-5.2.XXXX
sudo ./install.sh
Установщик выполнит необходимые проверки и произведет установку WCS в директорию /usr/local/FlashphonerWebCallServer
В процессе установки будут пройдены следующие шаги:
- Ознакомление и принятие лицензионного соглашения
- Ввод IP адресов в случае, если скрипту не удалось определить адреса автоматически (см. Конфигурация IP адресов)
- Запрос на включение WCS в автозагрузку при запуске Linux-сервера
- Проверка версии Java и удаление устаревших настроек из файла wcs-core.properties
В результате будет выведено сообщение об успешном завершении установки. В каталоге /usr/local/FlashphonerWebCallServer
появится набор каталогов:
bin
- исполняемые файлы WCSclient
- WCS JavaScript API 1.0, примеры использования и нагрузочные тестыclient2
- WCS JavaScript API 2.0 и примеры использованияconf
- конфигурационные файлыlib
- необходимые библиотекиtools
- инструменты для отладки WCSweb
- статические страницы веб-интерфейса WCS
Установка в тихом режиме¶
В некоторых случаях, при автоматизированном развертывании типовых конфигураций сервера при помощи Ansible или другой системы автоматизации, WCS может быть установлен в тихом режиме
В этом случае:
- не работает определение IP адресов (предполагается, что файл настроек flashphoner.properties и другие настройки будут перезаписаны скриптами автоматизации развертывания)
- запуск сервиса
webcallserver.service
настраивается от пользователяroot
Особенности установки на различные версии Java¶
JDK 12 или 14¶
Необходимо удалить из файла wcs-core.properties
следующие настройки
Также необходимо заменить настройку
на
JDK 15¶
Дополнительно к изменениям настроек в JDK 12 или 14, необходимо удалить из файла wcs-core.properties
настройки
JDK 16¶
Дополнительно к изменениям настроек в JDK 12, 14, 15, необходимо добавить в файл wcs-core.properties
настройку
JDK 17 и выше¶
Дополнительно к изменениям настроек в JDK 12, 14, 15, 16, необходимо удалить из файла wcs-core.properties
настройку
и добавить настройки
--add-exports java.base/sun.security.provider=ALL-UNNAMED
--add-opens java.base/java.lang=ALL-UNNAMED
Получение и активация лицензии¶
Вы можете приобрести коммерческую лицензию онлайн на странице: http://flashphoner.com/prices. Кроме этого доступна 30-дневная ознакомительная версия, которую можно получить на этой странице: http://flashphoner.com/get_trial/?product=wcs5
Активация через веб-интерфейс¶
При первом входе в веб-интерфейс WCS по адресу https://yourserver:8444/admin/
, где yourserver
- имя Вашего сервера, с доступным по умолчанию пользователем admin
(пароль admin
), отобразится окно с предложением ввести номер лицензии:
Введите номер Вашей лицензии и нажмите Next
Если активация была успешной, отобразится окно ввода учетных параметров.
Активация из командной строки¶
Воспользуйтесь скриптом активации лицензии:
Скрипт попросит ввести номер лицензии:
Введите лицензионный ключ чтобы завершить активацию.
Деактивация лицензии¶
Чтобы активировать эту же лицензию на другом сервере, например в случае переноса WCS на другой сервер, деактивируйте лицензию на старом сервере и активируйте вновь на новом сервере.
Деактивация через веб-интерфейс¶
Войдите в веб-интерфейс WCS по адресу https://yourserver:8444/admin/
, где yourserver
- имя Вашего сервера. Нажмите кнопку License
. Отобразится страница просмотра лицензионного ключа:
Щелкните по ссылке Deactivate
. Лицензия будет деактивирована, отобразится запрос лицензионного ключа:
Деактивация из командной строки¶
Для деактивации используется скрипт:
Если активация не проходит¶
Проверьте firewall и убедитесь, что WCS-сервер может установить HTTPS / TCP соединение с сервером активации my.flashphoner.com:443
. При недоступности сервера активации, настройте HTTP proxy по инструкции ниже.
Настройка HTTP proxy при недоступности сервера активации¶
Лицензионные серверы Flashphoner находятся за AWS ELB (Elastic Load Balancer) по адресу my.flashphoner.com
. В случае, если ELB (и, соответственно, серверы лицензий) по каким-либо причинам не будет доступен, требуется настроить HTTP Proxy для работы подписок и активации лицензий.
Настройки прокси находятся в файле конфигурации /usr/local/FlashphonerWebCallServer/conf/wcs-core.properties
:
# Proxy configuration
-Dhttp.proxyHost=proxy1.flashphoner.com
-Dhttp.proxyPort=3128
-Dhttps.proxyHost=proxy1.flashphoner.com
-Dhttps.proxyPort=3128
-Dhttp.nonProxyHosts=localhost|127.0.0.1|10.*|169.254.169.254
Вы можете указать адрес Вашего прокси-сервера, либо адрес одного из двух прокси-серверов Flashphoner:
Warning
При указании параметров настройки прокси кавычки не допускаются! Приведенный ниже пример не будет работать:
Настройка Firewall и NAT¶
Для корректной работы сервера все порты, перечисленные в таблице в разделе Ядро сервера должны быть открыты для входящего трафика в случае UDP и для установления соединения в случае TCP.
В таблице приведен пример правил NAT для маршрутизации входящего трафика, в случае, когда трафик приходит на внешний IP адрес и должен быть маршрутизирован на сервер, где установлен WCS. В таблице представлен минимальный необходимый набор портов для работы сервера. В зависимости от набора используемых функций и модулей (см. раздел Архитектура), набор правил может быть расширен в соответствии с таблицей в разделе Ядро сервера. Эти же порты должны быть открыты на firewall Linux сервера.
В таблице приведены порты используемые по умолчанию. Вы можете сконфигурировать WCS сервер на использование других портов.
Type | Protocol | Port Range | Source |
---|---|---|---|
Custom UDP Rule | UDP | 30000-33000 | 0.0.0.0/0 |
Custom TCP Rule | TCP | 8081 | 0.0.0.0/0 |
Custom TCP Rule | TCP | 8444 | 0.0.0.0/0 |
Custom TCP Rule | TCP | 8443 | 0.0.0.0/0 |
Custom TCP Rule | TCP | 30000-33000 | 0.0.0.0/0 |
Custom TCP Rule | TCP | 1935 | 0.0.0.0/0 |
SSH | TCP | 22 | 0.0.0.0/0 |
SSH доступ на стандартном порту 22 здесь указан только для администрирования самого Linux-сервера. Таким образном минимальный необходимый набор портов - это:
- 1935 - RTMP
- 8081 - встроенный веб-сервер WCS, работающий по HTTP
- 8443 - Secure Websocket
- 8444 - встроенный веб-сервер WCS, работающий по HTTPS
- 30000-33000 - SIP, Media, RTSP
Описание настройки SSL сертификатов для Secure Websockets и HTTPS см. в разделе Управление SSL-сертификатами.
Конфигурация IP адресов¶
Для правильной установки потребуется определить внешний IP адрес вашего сервера и адрес сетевого интерфейса. Скрипт установки попытается определить адрес автоматически, в случае, если это по каким-либо причинам не удалось, скрипт потребует ручного ввода адресов.
Если вы воспользовались рекомендацией в разделе Подготовка к установке и начали с использования сервера со статическим и публичным IP адресом, совпадающим с адресом сетевого интерфейса, то IP вашего сервера можно узнать простой командой
или
В этом примере IP - сервера 188.40.69.75
. Запишите или скопируйте IP адрес вашего сервера. Он понадобится при установке.
Определение IP адресов в случае размещения за NAT¶
Часто может потребоваться разместить WCS5 сервер за корпоративным NAT или арендовать сервер в датацентре, который не предоставляет выделенных статических IP-адресов. Хороший пример для такого случая Amazon EC2, где серверы расположены за NAT.
При размещении WCS сервера за NAT, понадобится определить два IP адреса.
-
Внешний IP адрес или Public IP может не принадлежать WCS серверу, но трафик, идущий на этот внешний IP адрес должен обязательно быть перенаправлен на WCS
-
IP адрес сетевого интерфейса или Private IP - это реальный адрес, назначенный сетевому интерфейсу. На нем WCS будет открывать сокеты для взаимодействия с сетью
Например, для тестового сервера на Amazon EC2, внешний IP адрес: 54.189.212.111
, а адрес сетевого интерфейса: 172.30.21.25
. Если ваш сервер находится за NAT по отношению к браузерным клиентам, запишите или скопируйте эти IP адреса. Они понадобятся вам при настройке сервера.
Определение IP адресов в автоматическом и полуавтоматическом режимах¶
Начиная со сборки 5.2.921, WCS пытается автоматически определить IP адреса при запуске, если они не заданы, либо если сервер стартует в облачном окружении с поддержкой AWS API или Google Cloud API. Если определить IP адреса при запуске не удается, это можно сделать вручную при помощи команды
Эта команда:
- пытается определить IP адреса автоматически
- если это не удается, запрашивает дополнительные данные у пользователя
- записывает результат в файл
flashphoner.properties
Рекомендуется использовать эту команду при проблемах определения IP адресов на сервере за NAT.