# Компонент для протокола HTTPS
Представляет собой исполняемый файл с именем webproxy_windows_amd64 для Windows или webproxy_linux_amd64 для Linux. Настройки для работы компонента указываются в файле конфигурации webproxy.toml
как показано далее.
Компонент поддерживает три варианта запуска: из консоли, как служба Windows или демон Linux. Они настраиваются так же, как и для рассмотренного выше компонента для трафика TrueConf, но с рядом отличий:
надо предварительно настроить работу с сертификатами;
требуется рядом с исполняемым файлом создать конфигурационный файл webproxy.toml;
файл запускается с параметром run (ниже подробнее использование на Windows и Linux).
# Настройка сертификатов
- Если на стороне TrueConf Server настроен самоподписанный сертификат, то скачайте его (по ссылке Скачать ca.crt в блоке Самоподписанный сертификат) и добавьте его в доверенные корневые сертификаты на машине с TrueConf Border Controller. Как это сделать, читайте в документации к вашей ОС.
Например, на ОС Debian:
- скопируйте файл сертификата в хранилище сертификатов в каталог
usr/local/share/ca-certificates/
:
sudo cp ca.crt /usr/local/share/ca-certificates/
- обновите хранилище сертификатов командой:
sudo update-ca-certificates -v
Если вы получите ошибку что команда не найдена, то установите пакет из репозитория:
sudo apt install -y ca-certificates
- для проверки, что ваша ОС доверяет сертификату, выполните:
openssl verify /usr/local/share/ca-certificates/ca.crt
2. В панели управления TrueConf Server перейдите в раздел Веб → Настройки и в поле Внешний адрес веб страницы TrueConf Server укажите адрес машины с TrueConf Border Controller.
3. Создайте сертификат для машины с TrueConf Border Controller. Если нет коммерческого, можно создать самоподписанный как показано в нашей базе знаний.
4. Полученные на шаге 3 сертификат и ключ скопируйте в каталог <path_to_border_controller>\etc\crt\
, где <path_to_border_controller>
— путь к исполняемому файлу компонента.
5. Переименуйте файлы сертификата и ключа в виде <guid>.crt
и <guid>.key
где <guid>
— одинаковый для обоих файлов 128-битный идентификатор GUID. Его можно сгенерировать, например, с помощью онлайн-сервиса UUID Generator (opens new window).
# Создание файла конфигурации
В каталоге с исполняемым файлом компонента создайте файл конфигурации webproxy.toml
вида:
[certificate]
cert_extension = '.crt'
key_extension = '.key'
[dir]
executable_relative = true
installation = 'C:\TrueConf Border Controller'
[file]
configname = 'webproxy'
[interfaces]
[interfaces.list]
[interfaces.list.0]
Address = '[::]:443'
EnableTLS = true
ReadTimeout = 0
TLSConfigID = 'd25ceb20-f473-41dc-8db9-37f4dec1a3d1'
TargetID = 'a824b5cb-c92d-4a52-a5cc-434fecaba6a8'
[interfaces.list.1]
Address = '[::]:80'
EnableTLS = false
ReadTimeout = 0
TLSConfigID = ''
TargetID = '2f0dbf86-8378-41fc-9c5a-89a43728a0b7'
[proxy]
trust_client_headers = true
[targets]
[targets.list.a824b5cb-c92d-4a52-a5cc-434fecaba6a8]
address = '10.110.2.82:443'
is_secure = true
[targets.list]
[targets.list.2f0dbf86-8378-41fc-9c5a-89a43728a0b7]
address = '10.110.2.82:80'
is_secure = false
[tls]
[tls.list]
[tls.list.d25ceb20-f473-41dc-8db9-37f4dec1a3d1]
CertificateID = 'd25ceb20-f473-41dc-8db9-37f4dec1a3d1'
CertificateType = 'user-provided'
DisplayName = 'My TLS configuration'
ID = 'd25ceb20-f473-41dc-8db9-37f4dec1a3d1'
где укажите следующие значения:
в разделе
[dir]
:installation
— путь к исполняемому файлу компонента;
в разделе
[interfaces.list.0]
:Address
— порт для HTTPS если отличается от стандартного 443;TLSConfigID
— имя файлов сертификата и ключа, полученное на шаге 5;TargetID
— GUID для идентификации блока настроек HTTPS из раздела[targets]
;
в разделе
[interfaces.list.1]
:Address
— порт для доступа к панели управления по HTTP если отличается от стандартного 80;TargetID
— GUID для идентификации блока настроек HTTP из раздела[targets]
;
для каждого из блоков
[targets.list.<guid>]
в разделе[targets]
:сгенерируйте уникальные GUID и добавьте их в названиях вместо
<guid>
;address
— IP-адрес или FQDN TrueConf Server и порт для передачи трафика от компонента;is_secure
— если для параметраaddress
текущего блока[targets.list.<guid>]
был указан HTTPS порт, то значениеtrue
, иначеfalse
;
в разделе
[tls]
:для названия блока
[tls.list.<guid>]
замените<guid>
на значениеTLSConfigID
(оно же название файла сертификата из шага 5);CertificateID
иID
— значениеTLSConfigID
.
7. Сохраните файл webproxy.toml
и запустите компонент.
# Запуск компонента на ОС Windows
Для запуска компонента из консоли выполните команду:
<path_to_border_controller> run
где <path_to_border_controller>
— путь к исполняемому файлу. Например:
c:\Program Files\TrueConf\webproxy_windows_amd64.exe run
Создание службы аналогично рассмотренным для компонента tc_bc инструкциям, только в качестве пути к файлу (параметры BinaryPathName
или binPath
) надо указать c:\Program Files\TrueConf\webproxy_windows_amd64.exe run
.
# Запуск компонента на ОС Linux
Для запуска компонента из терминала выполните команду:
<path_to_border_controller> run
где <path_to_border_controller>
— путь к исполняемому файлу. Например:
/opt/trueconf/enterprise/etc/bc/webproxy_linux_amd64 run