1. Сконфигурируйте параметры сервера, на который будет производиться установка сервиса SL-Gate в файле /etc/ansible-iot/latest/inventory.

sudo nano /etc/ansible-iot/latest/inventory

Структура раздела slgate в файле /etc/ansible-iot/latest/inventory:

inventory
[slgate]
localhost       ansible_connection=local        ansible_sudo_pass=password

Описание основных параметров SL-Gate в файле inventory:

ПараметрЗначение по умолчаниюТребуемое значениеОписание
<без имени>localhostlocalhost

Адрес сервера, на который будет производиться установка сервиса.

Так как предполагается локальная установка, используется значение localhost.

ansible_connection
locallocal

Способ подключения к серверу.

local — локальное подключение

ansible_sudo_pass
passwordpassword

Пароль для получения привилегий суперпользователя




2. Сконфигурируйте параметры для установки сервиса SL-Gate в файле /etc/ansible-iot/latest/vars/default.yml.

sudo nano /etc/ansible-iot/latest/vars/default.yml

Структура раздела slgate в файле /etc/ansible-iot/latest/vars/default.yml:

default.yml
slgate:
  # Имя сервера, на котором будет развернут SLGATE.
  # ВАЖНО!!! Нельзя использовать IP-адрес, т.к. такая схема не будет работать!
  # По умолчанию совпадает с 'iot.serverName', что предполагает установку рядом с платформой (на том же хосте).
  # В таком случае хосты в инвентаре в группах [iot] и [slgate] должны совпадать.
  serverName: "{{ iot.serverName }}"
  # Директория для установки SLGATE.
  installDir: /storage/slgate

Описание основных параметров SL-Gate в файле default.yml:

Жирным шрифтом выделены параметры, значения которых необходимо задать, опираясь на столбец "Значение по умолчанию" с учетом ваших индивидуальных требований.

ПараметрЗначение по умолчаниюТребуемое значениеОписание

slgate.serverName

{{ iot.serverName }}

Доменное имя сервера SL-Gate

Внешний адрес SL-Gate.

Обязательно должен быть доменным именем!
При использовании IP-адреса в качестве внешнего адреса SL-Gate, локальные платформы не смогут подключиться к SL-Gate.

slgate.installDir

/storage/slgate

/storage/slgate

Путь к директории, где будут храниться данные сервиса SL-Gate.




3. Сконфигурируйте параметры для работы сервиса SL-Gate в файле/etc/ansible-iot/latest/vars/service_parameters.yml.

sudo nano /etc/ansible-iot/latest/vars/service_parameters.yml

Структура раздела slgate в файле /etc/ansible-iot/latest/vars/service_parameters.yml:

service_parameters.yml
slgate:
  db:
    name: "activator"
    user: "activator"
    password: "activator"
    port:
      map: 5432
      export: false
  vpn:
    port:
      map: 1194
    protocol: udp
    maxClients: 1024
  easyrsa:
    req:
      country: "RU"
      province: "Novosibirsk"
      city: "Novosibirsk"
      organization: "Eltex Enterprise LTD."
      organizationUnit: "CPE"
      email: "slgate@slgate.eltex.loc"
  activator:
    port:
      map: 8899
      export: false
  proxy:
    scheme: "https://"
    useClientCert: true
    clientCertPassword: "PASSWORD_HERE"
    port:
      map: 4443

Описание основных параметров SL-Gate в файле service_parameters.yml:

ПараметрЗначение по умолчаниюТребуемое значениеОписание

slgate.proxy.useClientCert

falsetrue

Активация проверки клиентского сертификата для обращения к API SL-Gate.

Используется для безопасного обращения к API SL-Gate.

slgate.proxy.clientCertPassword

"PASSWORD_HERE""PASSWORD_HERE"

Пароль для расшифровки клиентского сертификата, используемого для безопасного обращения к API SL-Gate.

Данное значение требуется только в конфигурации платформы умного дома, в конфигурации SL-Gate этот параметр не используется и может иметь любое значение.

slgate.vpn.port.map

11941194

Порт, который будет прослушивать SL-Gate для установления соединения с локальными платформами.

slgate.vpn.protocol

udpudp

Протокол, который будет использоваться для установления соединения с локальными платформами.

slgate.vpn.maxClients

10241024

Максимальное одновременное количество туннелей на SL-Gate.

Учитываются как активные, так и неактивные на данный момент туннели.

slgate.proxy.port.map

44434443

Порт, по которому будет выполняться доступ к API сервиса, а также проксирование запросов до локальных платформ через SL-Gate.




4. Проверьте наличие файла сертификата для корректной работы сервиса SL-Gate при помощи следующей команды:

if [ -f /etc/ansible-iot/latest/slgate/gate/ssl/certs/slgate_client.crt ] ; then echo "Success, file exists" ; else echo "Failure, file doesn't exist" ; fi

Вывод «Success, file exists» означает наличие необходимого файла и не требует дополнительных действий.

Вывод «Failure, file doesn't exist» означает отсутствие указанного файла, в случае чего необходимо обратиться к разделу Генерация сертификатов для защищенного доступа (для сетей ОП на базе ELIS 1.36.1), часть «Создание сертификата ca.crt для сервиса SL-Gate».
В процессе выполнения данной инструкции будет получен файл /etc/ssl/slgate.eltex.loc/ca.crt, который необходимо переименовать в slgate_client.crt и переместить по пути /etc/ansible-iot/latest/slgate/gate/ssl/certs/slgate_client.crt

  • Нет меток