Kaspersky IoT Secure Gateway 100

Содержание

[Topic 213317]

О Kaspersky IoT Secure Gateway 100

Kaspersky IoT Secure Gateway 100 (далее также шлюз) представляет собой программно-аппаратный комплекс на базе устройства для промышленного интернета вещей Siemens SIMATIC IOT2040 (далее также устройство Siemens SIMATIC IOT2040 или устройство) с установленной операционной системой

и прикладным программным обеспечением. Kaspersky IoT Secure Gateway 100 предназначен для работы в качестве (англ. Industrial Internet of Things) в сети предприятия.

Этот документ содержит полное описание программной составляющей Kaspersky IoT Secure Gateway 100, а также базовую информацию об аппаратной составляющей. Полную информацию об устройстве Siemens SIMATIC IOT2040 вы можете получить из руководства пользователя устройства. Информацию о технических характеристиках устройства Siemens SIMATIC IOT2040 вы можете получить на сайте производителя.

Kaspersky IoT Secure Gateway 100 выполняет следующие функции:

  • получает по протоколу данные от сервера OPC UA, расположенного во внутренней сети предприятия;
  • передает полученные данные по протоколу в ;
  • обеспечивает кибербезопасность сервера OPC UA и поддерживает передачу зашифрованных данных.

Установку и предварительную настройку программного обеспечения Kaspersky IoT Secure Gateway 100 выполняют специалисты ООО "НПО АПРОТЕХ" или его партнеры.

Запуск Kaspersky IoT Secure Gateway 100 выполняется при подаче питания на устройство Siemens SIMATIC IOT2040. Остановка Kaspersky IoT Secure Gateway 100 выполняется при отключении устройства от сети.

В этом разделе справки

Комплект поставки

Аппаратные и программные требования

Обзор аппаратного обеспечения

В начало

[Topic 213321]

Комплект поставки

В комплект поставки Kaspersky IoT Secure Gateway 100 входят следующие компоненты:

  • Устройство для промышленного интернета вещей Siemens SIMATIC IOT2040 в комплектации, поставляемой производителем.
  • Техническая документация по устройству Siemens SIMATIC IOT2040 в комплектации, поставляемой производителем.
  • Карта microSD с предварительно установленным ПО Kaspersky IoT Secure Gateway 100. Карта microSD установлена в слот для карт microSD устройства Siemens SIMATIC IOT2040.
  • Адаптер USB-UART.
  • Файл с информацией о стороннем коде legal_notices.txt, расположенный на карте microSD.
  • QR-код со ссылкой на электронную версию руководства пользователя программной составляющей Kaspersky IoT Secure Gateway 100 и информацию о версии программной составляющей Kaspersky IoT Secure Gateway 100 (Release Notes).
В начало

[Topic 213322]

Аппаратные и программные требования

Требования для работы Kaspersky IoT Secure Gateway 100

Kaspersky IoT Secure Gateway 100 работает только на устройстве для промышленного интернета вещей Siemens SIMATIC IOT2040.

Чтобы Kaspersky IoT Secure Gateway 100 мог получать данные от сервера OPC UA по протоколу OPC UA, на этом сервере нужно настроить параметры отправки данных. Вы можете ознакомиться со спецификацией протокола OPC UA на сайте разработчика. В Kaspersky IoT Secure Gateway 100 версии 2.0 поддерживается протокол OPC UA версии 1.04.

Чтобы Kaspersky IoT Secure Gateway 100 мог передавать данные, полученные от сервера OPC UA в MQTT-брокер по протоколу MQTT, нужно настроить MQTT-брокер для приема данных от Kaspersky IoT Secure Gateway 100. Вы можете ознакомиться со спецификацией протокола MQTT на сайте разработчика. В Kaspersky IoT Secure Gateway 100 версии 2.0 поддерживается протокол MQTT версии 3.1.1.

Требования для настройки и диагностики Kaspersky IoT Secure Gateway 100

Для настройки и диагностики шлюза вам потребуется компьютер под управлением операционной системы Linux, с подключенным устройством чтения и записи карт памяти формата microSD и свободным USB-портом для подключения адаптера USB-UART из комплекта поставки.

На компьютере должны быть установлены следующие прикладные программы:

  • Программа для редактирования простого текста (например, nano, mcedit, Vim, gedit или Kate). Рекомендуется использовать текстовый редактор с поддержкой подсветки синтаксиса JSON.

    Чтобы внести изменения в параметры шлюза, вам потребуется подключить карту microSD к компьютеру, смонтировать ext3-разделы карты и отредактировать конфигурационные JSON-файлы в текстовом редакторе.

  • Программа для установки сеанса связи через последовательный порт (например, PuTTY, screen или minicom).

    Для диагностики работы шлюза, вам потребуется подключить шлюз к компьютеру c помощью адаптера USB-UART и установить сеанс связи. В этом документе подробно рассматривается диагностика шлюза с помощью программы PuTTY, но вы можете использовать другую программу (в этом случае обратитесь к документации используемой программы для получения информации об установке сеанса связи). PuTTY или другая программа позволяет определить вероятную причину возникновения неполадок в работе шлюза, например ошибку в настройках, проблему с сертификатами или отсутствие ответа на стороне сервера, на основе диагностических данных, полученных через последовательный порт.

Диагностика шлюза также возможна с использованием компьютера под управлением операционной системы Windows и программы PuTTY для Windows. При этом вы не сможете использовать этот же компьютер для настройки шлюза. Разделы карты microSD, в которых находятся конфигурационные файлы шлюза, размечены в файловой системе ext3, поддерживаемой в операционной системе Linux.

В начало

[Topic 240115]

Обзор аппаратного обеспечения

Этот раздел содержит краткий обзор элементов аппаратного обеспечения Kaspersky IoT Secure Gateway 100 (см. рис. ниже). Полную информацию об аппаратном обеспечении вы можете получить из руководства пользователя устройства Siemens SIMATIC IOT2040.

Устройство Siemens SIMATIC IOT2040

Устройство Siemens SIMATIC IOT2040

На рисунке цифрами отмечены следующие элементы:

1 – интерфейсы Ethernet 10/100 Mbps (два разъема).

2 и 9 – отверстия для установки креплений на стену (два отверстия на верхней грани корпуса устройства и два на нижней).

3 – светодиодные индикаторы (пять светодиодов);

4 – правая крышка.

5 – левая крышка.

6 – отверстие для опломбирования левой крышки.

7 – кнопка перезапуска.

8 – разъем для подключения питания.

Назначение интерфейсов USB и COM (RS232/422/485), а также кнопки User не рассматривается в этом документе, поскольку эти аппаратные компоненты не используются в программной составляющей Kaspersky IoT Secure Gateway 100 версии 2.0.

В начало

[Topic 231818]

Что нового

В Kaspersky IoT Secure Gateway 100 версии 2.0 реализованы следующие изменения:

  • Добавлена возможность передачи данных во внешнюю сеть через клиент MQTT с использованием протокола TLS. В версии 2.0 более не поддерживается передача данных в облачную платформу Siemens MindSphere.
  • Обновлено и доработано руководство пользователя: добавлена информация о работе с картой памяти microSD, о настройке подключения по протоколу MQTT, о получении данных диагностики через разъем UART и об обращении в службу технической поддержки.
В начало

[Topic 213324]

Типовая схема развертывания

Типовая схема развертывания Kaspersky IoT Secure Gateway 100 предполагает следующее:

  • Данные от сервера OPC UA поступают в Kaspersky IoT Secure Gateway 100 по протоколу OPC UA.
  • Kaspersky IoT Secure Gateway 100 получает данные и передает их в MQTT-брокер по протоколу MQTT.

    Схема развертывания Kaspersky IoT Secure Gateway 100

    Схема развертывания Kaspersky IoT Secure Gateway 100

В начало

[Topic 213670]

Цели и предположения безопасности

Цели безопасности

К

Kaspersky IoT Secure Gateway 100 относятся следующие требования:

  • Kaspersky IoT Secure Gateway 100 обеспечивает безопасную однонаправленную передачу данных от подключенного к шлюзу сервера OPC UA в MQTT-брокер по протоколу MQTT без возможности воздействия на внутренние ресурсы предприятия со стороны внешней сети.
  • Kaspersky IoT Secure Gateway 100 обеспечивает и данных, передаваемых в MQTT-брокер.

Целью безопасности Kaspersky IoT Secure Gateway 100 не является

Kaspersky IoT Secure Gateway 100.

Предположения безопасности

К

Kaspersky IoT Secure Gateway 100 относятся следующие ограничения:

  • Аппаратная платформа является доверенной, не рассматриваются угрозы, связанные с ее уязвимостями.
  • У злоумышленника отсутствует физический доступ к аппаратной платформе, не рассматриваются угрозы, связанные с соответствующими уязвимостями.
  • Уровень угроз со стороны внешней сети – средний (базовый повышенный) (приложение 8 по методике ФСТЭК от 5.02.2021).
  • Уровень угроз со стороны внутренней сети – низкий (базовый) (приложение 8 по методике ФСТЭК от 5.02.2021).
  • У Kaspersky IoT Secure Gateway 100 отсутствуют внутренние средства администрирования. Программная составляющая и конфигурация хранятся на извлекаемой карте microSD, физический доступ к которой имеется только у администратора.
  • Kaspersky IoT Secure Gateway 100 не гарантирует целостность и конфиденциальность данных, передаваемых от подключенного к шлюзу сервера OPC UA во внутренней сети, в Kaspersky IoT Secure Gateway 100.
  • Kaspersky IoT Secure Gateway 100 не обеспечивает безопасность подключенных устройств от атак из внутренней сети.
  • Kaspersky IoT Secure Gateway 100 является единственным средством обмена данными между внешней и внутренней сетью.
  • Аппаратная платформа имеет отдельные сетевые контроллеры для подключения к внутренней и внешней сети.
  • MQTT-брокер поддерживает подключение по протоколу .

Подробную информацию об оценке уровня угроз безопасности информации вы можете получить на сайте Федеральной службы по техническому и экспортному контролю России.

Не рассматриваются угрозы, связанные с нарушением доступности инфраструктуры, например, каналов связи между участниками сетевого взаимодействия.

В начало

[Topic 213340]

Настройка шлюза

Сценарий настройки передачи данных от сервера OPC UA в MQTT-брокер через Kaspersky IoT Secure Gateway 100 состоит из следующих этапов:

  1. Генерация криптографического ключа и сертификатов для подключения по протоколу OPC UA

    Генерация

    и требуется, если используется защищенное соединение OPC UA.

  2. Настройка узлов передачи данных по протоколу OPC UA на сервере OPC UA

    Вы можете ознакомиться со спецификацией протокола OPC UA на сайте разработчика. В Kaspersky IoT Secure Gateway 100 версии 2.0 поддерживается протокол OPC UA версии 1.04.

  3. Генерация криптографического ключа и сертификатов для подключения по протоколу MQTT

    Вам потребуется сгенерировать криптографический ключ и сертификат для клиента MQTT, а также подготовить файл, содержащий

    , которыми производилась подпись сертификата сервера.

  4. Настройка параметров Kaspersky IoT Secure Gateway 100 для передачи данных от сервера OPC UA в MQTT-брокер

    Подробные инструкции, относящиеся к этому шагу, приведены в этом разделе справки.

В этом разделе справки

Извлечение и установка карты памяти microSD

Расположение файлов на карте памяти microSD

Подключение к сети и настройка сетевых параметров

Настройка соединения по протоколу OPC UA

Настройка соединения по протоколу MQTT

В начало

[Topic 240117]

Извлечение и установка карты памяти microSD

Карта microSD установлена в слот для карт microSD устройства Siemens SIMATIC IOT2040 и содержит следующие файлы:

  • конфигурационные файлы с параметрами Kaspersky IoT Secure Gateway 100;
  • файлы журнала состояния Kaspersky IoT Secure Gateway 100;
  • файл с информацией о стороннем коде.

Для доступа к этим файлам, вам нужно извлечь карту microSD из устройства и подключить ее к компьютеру с установленной операционной системой Linux. Для продолжения работы шлюза, следует поместить карту microSD обратно.

Извлечение и установку карты памяти microSD следует производить при отключенном питании устройства Siemens SIMATIC IOT2040.

Чтобы извлечь и затем установить обратно карту памяти microSD:

  1. Откройте правую крышку устройства.
  2. Сдвиньте фиксатор слота карты памяти вниз и откройте фиксатор.
  3. Извлеките карту microSD.
  4. Поместите карту microSD обратно, закройте фиксатор и сдвиньте фиксатор вверх.

    Манипуляции с картой памяти microSD

    Извлечение и установка карты памяти microSD

В начало

[Topic 240542]

Расположение файлов на карте памяти microSD

Для изменения параметров Kaspersky IoT Secure Gateway 100, вам потребуется извлечь карту microSD из слота microSD устройства Siemens SIMATIC IOT2040, подключить карту microSD к компьютеру с операционной системой Linux, изменить содержимое конфигурационных файлов и установить карту microSD обратно.

Карта памяти microSD включает пять разделов (см. рис. ниже):

В начало

[Topic 224295]

Подключение к сети и настройка сетевых параметров

Для подключения устройства к внешней и внутренней сети требуется установить физические подключения (по кабелю RJ45) и при необходимости настроить параметры внешней и внутренней сети.

Физическое подключение к сети

Чтобы подключить Kaspersky IoT Secure Gateway 100 к сети передачи данных:

  1. Подключите сетевой кабель внутренней сети (в которой находится сервер OPC UA) к порту PN/IE LAN X2 P1 устройства.
  2. Подключите сетевой кабель внешней сети (в которой находится MQTT-брокер) к порту PN/IE LAN X1 P1 устройства.

    Схема расположения портов Ethernet на устройстве Siemens SIMATIC IOT2040

Автоматическое получение параметров сети

По умолчанию, Kaspersky IoT Secure Gateway 100 поставляется с динамической (DHCP) конфигурацией для внутренней и внешней сети. В этой конфигурации для автоматического получения параметров сети требуется наличие настроенного сервера DHCP, расположенного в той же сети.

Если сервер DHCP отсутствует или вы по каким-либо причинам не хотите использовать динамическую конфигурацию сети, используйте статическую конфигурацию сети.

Настройка статических параметров сети

Чтобы настроить статические параметры внешней и внутренней сети:

  1. Создайте два отдельных конфигурационных файла с названием dhcpcd.conf на карте microSD:
    • для внешней сети – в директории /etc раздела HW-ENW;
    • для внутренней сети – в директории /etc раздела HW-INW.
  2. В файлах dhcpcd.conf укажите параметры сети в соответствии с документацией dhcpd.

    Пример конфигурационного файла, в котором указаны параметры для внешней или внутренней сети:

    static ip_address=192.168.1.177/23

    static routers=192.168.1.1

  3. Сохраните изменения.
В начало

[Topic 224290]

Настройка соединения по протоколу OPC UA

Kaspersky IoT Secure Gateway 100 получает данные от сервера OPC UA, расположенного во внутренней сети организации, по протоколу OPC UA, описанному в спецификации OPC Unified Architecture (унифицированная архитектура OPC). Вы можете ознакомиться со спецификацией протокола OPC UA на сайте разработчика. Kaspersky IoT Secure Gateway 100 поддерживает протокол OPC UA версии 1.04.

В этом разделе справки

Защита соединения по протоколу OPC UA

Настройка получения данных по протоколу OPC UA

Описание параметров в конфигурационном файле OpcUaClientSettings-0.json

Особенности настройки параметров безопасности OPC UA

В начало

[Topic 240930]

Защита соединения по протоколу OPC UA

Чтобы использовать защищенное соединение клиента OPC UA c сервером OPC UA:

  1. Скопируйте сертификат клиента OPC UA в директорию /app/Core/pki/certs/transfer/opc_ua/client раздела HW-IDS карты microSD.
  2. Скопируйте сертификат сервера OPC UA в директорию /app/Core/pki/certs/transfer/opc_ua/client раздела HW-IDS карты microSD.
  3. Скопируйте закрытый криптографический ключ клиента OPC UA в директорию /app/Core/pki/private/transfer/opc_ua/client раздела HW-IDS карты microSD.

Передача данных по протоколу OPC UA возможна и без использования защищенного соединения. Но в этом случае не обеспечивается безопасное подключение клиента OPC UA к серверу OPC UA. Мы не рекомендуем использовать такой режим работы Kaspersky IoT Secure Gateway 100.

В начало

[Topic 240931]

Настройка получения данных по протоколу OPC UA

Чтобы настроить получение данных по протоколу OPC UA:

  1. Создайте конфигурационный файл OpcUaClientSettings-0.json.
  2. В файле OpcUaClientSettings-0.json укажите параметры OPC UA и их значения, соблюдая синтаксис JSON.
  3. Поместите конфигурационный файл в директорию /app/Core/config/transfer/opc_ua/client в разделе HW-IDS карты microSD.

Пример конфигурационного файла:

OpcUaClientSettings-0.json

{

"id": 0,

"name": "Kaspersky IoT Secure Gateway 100 OPC UA Client",

"description": "Collects data from CNC by Kaspersky IoT Secure Gateway 100",

"url": "opc.tcp://192.168.177.7:4840",

"readingCycle": 1,

"security": {

"mode": "SignAndEncrypt",

"policy": "Basic256Sha256",

"clientPkiData": {

"certificate": "opc-ua-client.crt",

"privateKey": "opc-ua-client.key"

},

"trustList": ["opc-ua-server.crt"]

},

"userCredentials":

{

"username": "KISG100",

"password": "0R20jN#yZd~zaLKe?2J#@~|YC"

},

"heartbeat": {

"id": 0,

"name": "Heartbeat",

"timeout": 60

},

"nodes": [

{

"id": 1,

"name": "Temperature",

"nodeId": "ns=1;s=VariableTemperature"

},

{

"id": 2,

"name": "Speed",

"nodeId": "ns=2;i=2045"

}

]

}

Для редактирования файлов в формате JSON мы рекомендуем использовать текстовый редактор с поддержкой подсветки синтаксиса JSON. Это позволит избежать возможных ошибок (например, непарных скобок).

В начало

[Topic 240932]

Описание параметров в конфигурационном файле OpcUaClientSettings-0.json

Параметры, отмеченные как обязательные, следует явно указать. Прочие параметры настраивать необязательно. Для необязательных параметров, не включенных в конфигурационный файл, может использоваться значение по умолчанию, предусмотренное протоколом OPC UA.

Параметры в файле OpcUaClientSettings-0.json

Имя параметра

Обязательный параметр

Описание

Возможные значения и примечания

id

Да

Идентификатор клиента OPC UA, принимающего данные от сервера OPC UA.

0.

Значение этого параметра должно совпадать со значением параметра receivingHubId в конфигурационном файле GuideSettings-0.json.

name

Да

Имя клиента OPC UA, принимающего данные от сервера OPC UA.

<OPC UA client name>.

Пример: Kaspersky IoT Secure Gateway 100 OPC UA Client.

description

 

Описание клиента OPC UA, принимающего данные от сервера OPC UA.

<OPC UA client description>.

Пример: Collect data from CNC by Kaspersky IoT Secure Gateway 100.

url

Да

Адрес сервера OPC UA.

<сетевой протокол>://<хост>:<порт>.

Пример: opc.tcp://192.168.177.7:4840.

Порт 4840 используется по умолчанию.

readingCycle

Нет

Частота считывания данных шлюзом (в секундах).

1.

Целое значение не меньше 0.

0 – специальное значение, которое устанавливает использование максимальной частоты, доступной клиенту и серверу.

security

Да

Блок

. Содержит параметры mode, policy, trustList и блок параметров clientPkiData.

  • Блок параметров {mode, policy, clientPkiData, trustList}.
  • null.

В блоке параметров security настраиваются режимы и политики безопасной коммуникации, указываются используемые сертификаты и криптографические ключи для

и данных.

Если не требуется настраивать параметры безопасности, укажите null в блоке security. При этом будет использоваться режим безопасности None.

mode

Нет

Режим управления безопасностью подключения клиентского приложения.

  • Sign – режим, в котором для подключения требуется использовать цифровую подпись данных.
  • SignAndEncrypt – режим, в котором для подключения требуется одновременно использовать цифровую подпись данных и шифрование данных.
  • None – режим, в котором для подключения не требуется использовать цифровую подпись данных и шифрование данных. Не рекомендуется использовать этот режим, так как он не обеспечивает безопасное подключение клиента OPC UA к серверу OPC UA.
  • Any – режим, в котором для подключения будет использован любой из перечисленных режимов (при условии поддержки сервером): Sign, SignAndEncrypt, None.

policy

Нет

Название

, используемой на сервере OPC UA.

  • Basic128Rsa15.
  • Basic256.
  • Basic256Sha256.
  • None.
  • Any – возможно использование любой из перечисленных политик (при условии поддержки сервером).

Политика безопасности None является наиболее совместимой с разными видами источников данных для соединения по OPC UA.

clientPkiData

Нет

Блок параметров, содержащий сертификат и закрытый криптографический ключ клиента OPC UA для безопасного соединения.

Блок параметров {certificate, privateKey}.

Блок параметров clientPkiData требуется заполнить даже в случае, если полям mode и policy установлено значение None.

Для безопасного взаимодействия по OPC UA вам потребуется создать закрытый криптографический ключ и сертификат и добавить их в конфигурацию клиента и сервера. При генерации сертификатов для соединения клиента (Kaspersky IoT Secure Gateway 100) и сервера OPC UA удостоверьтесь, что сертификаты удовлетворяют следующим требованиям:

  • Параметры криптографических ключей и сертификатов соответствуют выбранной политике безопасности.
  • Используется формат DER или PEM для сертификатов и криптографических ключей клиента.
  • Для сертификата клиента значение поля Subject Alt Name содержит значение URI:urn:aprotech:KISG100:OpcUaClient.

certificate

Нет

Имя файла сертификата.

opc-ua-client.crt.

privateKey

Нет

Имя файла закрытого криптографического ключа.

opc-ua-client.key.

trustList

Нет

Массив, содержащий имена файлов доверенных сертификатов.

  • [opc-ua-server.crt] – одно или несколько имен файлов доверенных сертификатов сервера OPC UA.
  • AllowAll – разрешение подключение к серверу OPC UA без проверки его сертификата.

Если конфигурация сервера OPC UA предполагает использование собственного списка доверенных сертификатов, добавьте сертификат клиента в этот список. Если проверка сертификатов не требуется, укажите для этого параметра значение AllowAll.

userCredentials

Нет

Блок параметров с учетными данными клиента OPC UA на сервере OPC UA.

  • Блок параметров {username, password} с учетными данными пользователя.
  • null – указывается, если вы хотите разрешить анонимное подключение клиента OPC UA к серверу OPC UA. В этом случае указывать значения username и password не требуется.

username

Нет

Имя учетной записи пользователя для авторизации на сервере OPC UA.

<username>.

password

Нет

Пароль учетной записи пользователя для авторизации на сервере OPC UA.

<password>.

heartbeat

Нет

Блок параметров, содержащий настройки сигнала работоспособности Kaspersky IoT Secure Gateway 100, генерируемый клиентом OPC UA.

  • Блок параметров {id, name, timeout}.
  • null.

Если вы не добавите параметр heartbeat или укажете значение null, сигналы работоспособности отправляться не будут.

id

Нет

Идентификатор узла данных.

0.

name

Нет

Имя узла данных.

<heartbeat node name>.

Пример: Heartbeat.

timeout

Нет

Период в секундах между генерацией сигналов работоспособности.

60.

Требуется указать целое значение не меньше 0. Значение по умолчанию – 30.

nodes

Да

Блок параметров узлов данных.

Блок параметров {id, name}.

Заполняется для каждого узла данных. Идентификатор и имя узла данных требуются для построения маршрутов и передачи данных от сервера OPC UA в MQTT-брокер.

id

Да

Идентификатор исходящего порта.

<id>.

name

Да

Имя исходящего порта. Должно совпадать с именем целевого порта name одного из

, указанных в блоке параметров topics в конфигурационном файле MqttPublisherSettings-0.json.

<node name>.

Пример: Temperature.

Для корректной передачи данных от сервера OPC UA в MQTT-брокер, требуется сопоставить

OPC UA и соответствующие им MQTT-топики. Сопоставление осуществляется по значению name.

 

nodeId

Да

Идентификатор узла данных.

<namespace>, <nodeID>.

ns

Да

Идентификатор пространства имен сервера OPC UA.

<namespace>.

nodeId

Да

Идентификатор узла данных в пространстве имен сервера OPC UA.

<nodeID>.

Возможны два типа идентификатора:

  • s (string) – строковое значение идентификатора узла данных. Например, "nodeId": "ns=1;s=Variable temperature".
  • i (numeric) – числовое значение идентификатора узла данных. Например, "nodeId": "ns=2;i=2045".

В начало

[Topic 240935]

Особенности настройки параметров безопасности OPC UA

Kaspersky IoT Secure Gateway 100 не устанавливает соединение по протоколу OPC UA в следующих случаях:

  • сервер не имеет сертификата и не разрешено небезопасное подключение;
  • в параметре trustList не указан сертификат сервера и не установлено значение AllowAll;
  • сертификат клиента, сертификат сервера или криптографические ключи не удовлетворяют параметрам выбранной политики безопасности.

Клиент и сервер OPC UA устанавливают небезопасное соединение в следующих случаях:

  • установлено значение null для блоков параметров security и userCredentials, и сервер поддерживает такое соединение;
  • установлено значение Any для полей mode и policy, и сервер предлагает выбор небезопасного соединения.

Любое понижение параметров безопасности снижает защищенность соединения. Например, следующие настройки параметров снижают защищенность соединения по протоколу OPC UA:

  • Использование значения null для блока параметров security приводит к использованию соединения без шифрования и подписи.
  • Использование значения AllowAll для поля trustList отключает проверку сертификата сервера.
  • Использование значения null для блока параметров userCredentials отключает возможность подключения к серверу с использованием имени пользователя и пароля.
  • Значения Basic128Rsa15 и Basic256 для поля policy считаются устаревшими в спецификации протокола OPC UA версии 1.4, так как алгоритм хеширования SHA-1 больше не считается безопасным.
  • Использование значения None для полей policy или mode приводит к:
    • использованию соединения без шифрования и подписи данных;
    • передаче пароля серверу в открытом виде.
В начало

[Topic 224293]

Настройка соединения по протоколу MQTT

Kaspersky IoT Secure Gateway 100 передает данные в MQTT-брокер по протоколу MQTT. Вы можете ознакомиться со спецификацией протокола MQTT на сайте разработчика. В Kaspersky IoT Secure Gateway 100 версии 2.0 поддерживается протокол MQTT версии 3.1.1.

В этом разделе справки

Защита соединения по протоколу MQTT

Настройка отправки данных по протоколу MQTT

Описание параметров в конфигурационном файле MqttPublisherSettings-0.json

Особенности заполнения названий MQTT-топиков

Действия при отзыве сертификата MQTT-брокера

В начало

[Topic 240937]

Защита соединения по протоколу MQTT

Чтобы использовать защищенную передачу данных по протоколу MQTT:

  1. Скопируйте файл, содержащий цепочку сертификатов клиента MQTT (цепочка может состоять из одного листового сертификата клиента) в директорию /app/Core/pki/certs/transfer/mqtt/publisher раздела HW-IDS карты microSD.
  2. Скопируйте файл, содержащий цепочку сертификатов, которыми производилась цифровая подпись сертификата сервера в директорию /app/Core/pki/certs/transfer/mqtt/publisher раздела HW-IDS карты microSD.
  3. Скопируйте файл закрытого криптографического ключа клиента MQTT в директорию /app/Core/pki/private/transfer/mqtt/publisher раздела HW-IDS карты microSD.

Используемые клиентом MQTT сертификаты и криптографические ключи должны быть в формате PEM. Длина ключа сертификата клиента должна составлять не менее 2048 бит.

В начало

[Topic 240939]

Настройка отправки данных по протоколу MQTT

Чтобы настроить отправку данных по протоколу MQTT:

  1. Создайте файл MqttPublisherSettings-0.json.
  2. В файле MqttPublisherSettings-0.json укажите параметры MQTT и их значения, соблюдая синтаксис JSON.
  3. Поместите конфигурационный файл в директорию /app/Core/config/transfer/mqtt/publisher в раздел HW-IDS карты microSD.

Пример конфигурационного файла:

MqttPublisherSettings-0.json

{

"id": 0,

"name": "Kaspersky IoT Secure Gateway 100 MQTT Publisher",

"description": "Transfer data to MQTT Broker by Kaspersky IoT Secure Gateway 100",

"clientId": "KISG100",

"serverUri": "ssl://192.168.188.8:8883",

"security": {

"clientPkiData": {

"certificate": "mqtt-publisher.crt",

"privateKey": "mqtt-publisher.key"

},

"trustStore": ["ca-bundle.crt"]

},

"userCredentials":{

"username": "KISG100",

"password": "4vRXE84zsCy8bLQcZi2HH82TmC"

},

"lastWill": {

"topicName": "LastWill",

"message": "LastMessage"

},

"keepAlive": 800,

"qualityOfService": 1,

"topics": [

{

"id": 0,

"name": "Heartbeat",

"topicName": "Heartbeat"

},

{

"id": 1,

"name": "Temperature",

"topicName": "Temperature"

},

{

"id": 2,

"name": "Speed",

"topicName": "Speed"

}

]

}

Для редактирования файлов в формате JSON мы рекомендуем использовать текстовый редактор с поддержкой подсветки синтаксиса JSON. Это позволит избежать возможных ошибок (например, непарных скобок).

В начало

[Topic 240940]

Описание параметров в конфигурационном файле MqttPublisherSettings-0.json

Параметры, отмеченные как обязательные, следует явно указать. Прочие параметры настраивать необязательно. Для необязательных параметров, не включенных в конфигурационный файл, может использоваться значение по умолчанию, предусмотренное протоколом MQTT.

Параметры в файле MqttPublisherSettings-0.json

Имя параметра

Обязательный параметр

Описание

Возможные значения и примечания

id

Да

Идентификатор клиента MQTT, который будет отправлять данные в MQTT-брокер.

0.

Значение этого параметра должно совпадать со значением параметра sendingHubId в конфигурационном файле GuideSettings-0.json.

name

Да

Имя клиента MQTT, который будет отправлять данные в MQTT-брокер.

<MQTT Publisher name>.

Пример: Kaspersky IoT Secure Gateway 100 MQTT Publisher.

description

Нет

Описание клиента MQTT, который будет отправлять данные в MQTT-брокер.

<MQTT Publisher description>.

Пример: Transfer data to MQTT Broker by Kaspersky IoT Secure Gateway 100.

clientId

Нет

Уникальный идентификатор клиента MQTT.

1.

Внутренняя архитектура Kaspersky IoT Secure Gateway 100 предполагает взаимодействие между принимающим и отправляющим концентратором. Параметр id связан с отправляющим концентратором. Параметр clientId связан с требованиями протокола MQTT и определяет идентификатор клиента MQTT в рамках этого протокола.

Значение clientId должно быть уникальным среди всех подключенных к MQTT-брокеру клиентов.

serverUri

Да

Адрес сервера, к которому будет подключаться клиент MQTT.

<схема>://<хост>:<порт>.

Пример: ssl://192.168.188.8:8883.

ssl – схема обращения к ресурсу, предусмотренная архитектурой.

8883 – порт по умолчанию.

security

Да

Блок параметров для настройки безопасного соединения. Содержит блоки параметров clientPkiData и trustStore.

Блок параметров {clientPkiData, trustStore}.

В блоке параметров security указываются сертификаты и криптографические ключи для цифровой подписи и шифрования данных.

clientPkiData

Да

Блок параметров с именами файлов сертификата и закрытого криптографического ключа клиента MQTT для безопасного соединения.

Блок параметров {certificate, privateKey}.

certificate

Да

Имя файла, содержащего цепочку сертификатов до сертификата клиента MQTT.

mqtt-publisher.crt.

privateKey

Да

Имя файла закрытого криптографического ключа.

mqtt-publisher.key.

Длина ключа должна составлять не менее 2048 бит.

trustStore

Да

Массив, который содержит имя файла, содержащего цепочку сертификатов до сертификата MQTT-брокера.

ca-bundle.crt.

Имя файла, содержащего цепочку сертификатов до сертификата удостоверяющего центра, который подписывал сертификат MQTT-брокера.

userCredentials

Да

Блок параметров, который отвечает за аутентификацию клиента MQTT на сервере.

  • Блок параметров {username, password} с учетными данными пользователя.
  • null – указывается, если вы хотите разрешить анонимное подключение клиента MQTT к MQTT-брокеру. В этом случае не требуется заполнять поля username и password.

username

Нет

Имя учетной записи пользователя для авторизации на сервере MQTT.

<username>.

password

Нет

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

<password>.

lastWill

Нет

Блок параметров для настройки сообщения, которое уведомляет о некорректном отключении клиента (LWT-сообщение).

Блок параметров {topicName, message}.

Клиент может указать LWT-сообщение при первом подключении к MQTT-брокеру. MQTT-брокер хранит это сообщение до тех пор, пока не обнаружит некорректное отключение клиента, а при обнаружении – отправит LWT-сообщение всем клиентам, подписавшимся на получение такого сообщения. При корректном отключении клиента, MQTT-брокер не отправляет такое сообщение.

topicName

Нет

Название MQTT-топика, который определяет информационный канал, на котором публикуется LWT-сообщение.

<topicName>.

Пример: LastWill.

message

Нет

Содержание LWT-сообщения.

<message>.

Пример: LastMessage.

keepAlive

Нет

Интервал, в течение которого MQTT-брокер может не получать сообщения от клиента MQTT и при этом не разрывать соединение.

800.

Значение по умолчанию: 120.

Возможные значения: 065535.

Если значение keepAlive равно нулю, сервер не будет обязан отключать клиента на основании бездействия клиента.

Сервер может отключить клиента, который, по его мнению, неактивен или не отвечает на запросы, в любое время, независимо от значения keepAlive, предоставленного клиентом.

qualityOfService

Нет

Параметр, определяющий гарантию отправки сообщений.

1.

Соглашение между отправителем сообщения (издателем) и получателем сообщения (подписчиком), которое определяет гарантию доставки для конкретного сообщения. В спецификации MQTT определены три уровня qualityOfService:

  • 0 – не более одного раза: клиент публикует сообщения, не проверяя факт доставки до брокера. Сообщения могут быть потеряны или продублированы.
  • 1 – по крайней мере один раз: брокер подтверждает доставку. Сообщения могут дублироваться, но доставка гарантирована.
  • 2 – ровно один раз: обеспечивается гарантированная доставка сообщения, при этом исключается возможное дублирование.

Значение по умолчанию: 1.

topics

Да

Массив из блоков параметров MQTT-топиков.

Массив блоков параметров [{id, name, topicName}].

Отдельный блок параметров в массиве заполняется для каждого MQTT-топика.

id

Да

Идентификатор целевого порта.

<id>.

Пример: 0.

name

Да

Имя целевого порта. Должно совпадать с именем исходящего порта name одного из узлов данных сервера OPC UA, указанным в блоке параметров nodes в конфигурационном файле OpcUaClientSettings-0.json.

<name>.

Пример: Temperature.

Для корректной передачи данных от сервера OPC UA в MQTT-брокер, требуется сопоставить MQTT-топики и соответствующие им узлы данных OPC UA. Сопоставление осуществляется по значению name.

topicName

Да

Название MQTT-топика.

<topicName>.

Пример: Heartbeat.

См. также: Особенности заполнения названий MQTT-топиков.

В начало

[Topic 240941]

Особенности заполнения названий MQTT-топиков

При заполнении значений topicName учитывайте следующие особенности:

  • В названиях MQTT-топиков нельзя использовать подстановочные знаки. Также мы не рекомендуем использовать в названиях MQTT-топиков знак $.
  • Название MQTT-топика не может быть пустым (должно содержать хотя бы один символ).
  • Названия MQTT-топиков чувствительны к регистру.
  • Названия MQTT-топиков могут содержать символ пробела.
  • MQTT-топики, различающимися только символом / в начале или в конце названия, являются разными MQTT-топиками.
  • Допустимо название MQTT-топика, состоящее только из символа /.
  • Название MQTT-топика не должно содержать нулевой символ (NUL).
  • Названия MQTT-топиков представляют собой строки в кодировке UTF-8, они не должны быть объемом более 65535 байт.
В начало

[Topic 246545]

Действия при отзыве сертификата MQTT-брокера

При отзыве сертификата MQTT-брокера, вам потребуется получить новый сертификат у администратора MQTT-брокера и заменить отозванный сертификат. Если этого не сделать, Kaspersky IoT Secure Gateway 100 будет доверять как отозванному сертификату, так и новому, пока не истечет срок действия отозванного сертификата. При этом возможна ситуация, когда соединение, установленное по безопасному каналу, в действительности не будет являться безопасным.

Чтобы использовать новый сертификат MQTT-брокера вместо отозванного:

  1. В директории /app/Core/pki/certs/transfer/mqtt/publisher раздела HW-IDS карты microSD удалите файл, указанный в параметре trustStore конфигурационного файла MqttPublisherSettings-0.json.
  2. В параметре trustStore конфигурационного файла MqttPublisherSettings-0.json укажите имя файла нового сертификата.
  3. Скопируйте в директорию /app/Core/pki/certs/transfer/mqtt/publisher раздела HW-IDS файл нового сертификата.

В начало

[Topic 240573]

Диагностика и обращение в техническую поддержку

Если вам не удается настроить работу Kaspersky IoT Secure Gateway 100 и вы не нашли решения вашего вопроса в документации, вы можете самостоятельно провести диагностику, а также обратиться в службу технической поддержки, приложив полученную вами диагностическую информацию.

Сценарий диагностики Kaspersky IoT Secure Gateway 100 состоит из следующих этапов:

  1. Проверка подключения к MQTT-брокеру

    Выполните следующие проверки на стороне MQTT-брокера:

    • Проверьте статус шлюза (в сети или не в сети).
    • Если MQTT-брокер ведет журнал событий, проверьте диагностические сообщения о передаче данных со шлюза.
    • Проверьте регулярность получения MQTT-сообщений.
    • Если имеется лимит на входящий трафик, убедитесь, что это ограничение не превышается.
  2. Осмотр устройства

    Проведите осмотр элементов аппаратного обеспечения. Вам потребуется оценить:

    • состояние светодиодных индикаторов PWR, SD, OC;
    • фиксацию адаптера питания, коннекторов сетевого шнура;
    • фиксацию кабелей Ethernet, состояния индикаторов разъемов RJ45 (PN/IE LAN X1 P1 и PN/IE LAN X2 P1);
    • отсутствие термических и механических повреждений на корпусе, печатной плате и электронных компонентах.
  3. Поиск ошибок в журнале диагностики

    Подключитесь к шлюзу с помощью адаптера USB-UART и получите журнал диагностики с помощью PuTTY. В полученном журнале диагностики проверьте:

    • отсутствие ошибок на аппаратном уровне;
    • запуск ядра KasperskyOS и успешную инициализацию компонентов;
    • запуск служб OPC UA Client, MQTT Publisher и Navigation;
    • соединение с сервером OPC UA по наличию сообщения OPC UA Client has established connection;
    • соединение с MQTT-брокером по наличию сообщения MQTT Publisher established connection;
    • получение сообщений по протоколу OPC UA и их передачу по протоколу MQTT.

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

    Для поиска ошибок вы также можете использовать файлы журнала состояния, хранящиеся на карте памяти microSD.

  4. Обращение в службу технической поддержки

    Если вам не удалось самостоятельно восстановить правильную работу шлюза, обратитесь в службу технической поддержки:

    • С вопросами по подключению и настройке шлюза обращайтесь к официальному дистрибьютору Kaspersky IoT Secure Gateway 100 на территории РФ: ООО "МЕРЛИОН", support@merlion.ru.
    • С вопросами по работе встроенного ПО обращайтесь в службу технической поддержки ООО "НПО АПРОТЕХ", support@aprotech.ru.

    В обоих случаях к обращению следует приложить:

В этом разделе справки

Диагностика с помощью PuTTY

Журнал состояния

В начало

[Topic 240119]

Диагностика с помощью PuTTY

В этом разделе приведены инструкции по получению диагностической информации о работе шлюза с помощью программы PuTTY – свободно распространяемого клиента для протоколов удаленного доступа, включающих SSH, Telnet и rlogin. PuTTY также может подключаться к устройствам через последовательный порт.

Дополнительную информацию о настройке и использовании PuTTY вы можете найти в документации к программе PuTTY.

В этом разделе справки

Подключение компьютера к шлюзу с помощью адаптера USB-UART

Настройка соединения со шлюзом в PuTTY

Получение диагностических сведений в PuTTY

Проверка информации из журнала диагностики

Проверка и настройка даты и времени

В начало

[Topic 240891]

Подключение компьютера к шлюзу с помощью адаптера USB-UART

Чтобы использовать PuTTY для диагностики Kaspersky IoT Secure Gateway 100,

подключите компьютер с помощью имеющегося в комплекте поставки адаптера USB-UART к диагностическому разъему UART, расположенному под правой крышкой устройства (см. рис. ниже).

Расположение диагностического разъема UART

Расположение диагностического разъема UART

Контакты диагностического разъема UART

Контакты диагностического разъема UART

При подключении адаптера USB-UART к диагностическому разъему UART соблюдайте назначение контактов диагностического разъема (см. таблицу ниже).

Назначение контактов диагностического разъема UART

Номер контакта

Назначение контакта

Провод адаптера USB-UART

1

GND

Земля (черный)

2

RTS_N

3

n. c.

4

TXD

Передача данных (зеленый)

5

RXD

Прием данных (белый)

6

CTS_N

Пример подключения кабеля USB-UARTк диагностическому разъему UART

Пример подключения кабеля USB-UART к диагностическому разъему UART

Если цвета проводов адаптера отличаются от представленных в таблице и на рисунке, используйте текстовую маркировку, нанесенную на коннекторы или плату адаптера USB-UART.

В начало

[Topic 240892]

Настройка соединения со шлюзом в PuTTY

Чтобы настроить соединение в PuTTY:

  1. Запустите программу PuTTY.

    При запуске отображается диалоговое окно PuTTY Configuration. По умолчанию в панели Category диалогового окна выбран пункт Session.

  2. В блоке параметров Specify the destination you want to connect toConnection type выберите вариант Serial.
  3. В поле Serial line укажите имя последовательного порта, соответствующего подключенному адаптеру USB-UART (например, /dev/ttyUSB0 в Linux или COM8 в Windows).

    В Linux вы можете определить имя порта, выполнив команду ls /dev/ttyUSB*. Если эта команда выводит несколько имен, то можно выполнить ее повторно при подключенном и отключенном адаптере USB-UART. Имя, которое появится при подключении адаптера, будет искомым.

    В Windows вы можете определить имя порта, запустив "Диспетчер устройств". В дереве консоли откройте папку Порты (COM и LPT) и найдите в этой папке объект, соответствующий подключенному адаптеру USB-UART. Имя объекта будет содержать имя порта в круглых скобках. Например, Profilic USB-to-Serial Comm Port (COM8).

  4. В поле Speed установите значение скорости передачи данных 115200 бод/c.
  5. В панели Category выберите пункт Session → Logging.
  6. В группе параметров Session logging выберите вариант All session output.
  7. В поле Log file name укажите путь к файлу журнала событий.

    Вы можете указать имя файла в формате: KISG100LOG_&Y_&M_&D_&T.log. В этом случае для каждого нового сеанса подключения PuTTY будет создавать новый файл журнала, а к имени файла будет автоматически добавляться дата и время начала сеанса.

  8. В панели Category выберите пункт Session.
  9. В блоке параметров Load, save or delete a stored session в поле Saved Sessions укажите имя соединения co шлюзом (например KISG100).
  10. Нажмите на кнопку Save.

В начало

[Topic 240893]

Получение диагностических сведений в PuTTY

Чтобы получить файл журнала с диагностической информацией:

  1. Подключите компьютер к шлюзу с помощью адаптера USB-UART.
  2. Запустите программу PuTTY.
  3. В блоке параметров Load, save or delete a stored session выберите ранее сохраненное соединение co шлюзом (например, KISG100).
  4. Нажмите на кнопку Load.

    В результате загрузятся ранее сохраненные значения параметров соединения со шлюзом.

  5. Нажмите на кнопку Open.

PuTTY откроет окно терминала, в котором отобразится диагностическая информация, поступающая от шлюза. Отображаемая информация также записывается в файл журнала событий, указанный в поле Log file name при настройке соединения со шлюзом.

В таблице ниже перечислены возможные неполадки PuTTY при получении диагностической информации в Linux и способы их устранения.

Возможные неполадки PuTTY при работе в Linux

Сообщение об ошибке

Способ устранения

Unable to open serial port

Убедитесь, что при настройке соединения со шлюзом вы указали правильное имя порта. Если имя порта указано верно, но ошибка повторяется, запустите PuTTY от имени суперпользователя на шаге 2:

sudo putty

unable to load font "server:fixed"

После выполнения шага 4, в панели Category выберите пункт WindowFonts. В поле Font used for ordinary text укажите один из доступных в системе шрифтов вместо server:fixed.

В начало

[Topic 240440]

Проверка информации из журнала диагностики

В этом разделе приведены инструкции по диагностике работы Kaspersky IoT Secure Gateway 100 на основании информации из файла журнала диагностики. Для получения файла журнала диагностики, подключите шлюз к компьютеру адаптером USB-UART и воспользуйтесь программой PuTTY.

Диагностика запуска KasperskyOS

Откройте файл журнала диагностики. Об успешном запуске KasperskyOS свидетельствует наличие следующих сообщений:

Info: [BLKDEVSR] Port 'mmc0' successfully registered.

Info: [BLKDEVSR] Port 'mmc0_p0' successfully registered.

Info: [BLKDEVSR] Port 'mmc0_p0ro' successfully registered.

Info: [BLKDEVSR] Port 'mmc0_p1' successfully registered.

Info: [BLKDEVSR] Port 'mmc0_p1ro' successfully registered.

Info: [BLKDEVSR] Port 'mmc0_p2' successfully registered.

Info: [BLKDEVSR] Port 'mmc0_p2ro' successfully registered.

Info: [BLKDEVSR] Port 'mmc0_p3' successfully registered.

Info: [BLKDEVSR] Port 'mmc0_p3ro' successfully registered.

Info: [BLKDEVSR] Port 'mmc0_p4' successfully registered.

Info: [BLKDEVSR] Port 'mmc0_p4ro' successfully registered.

Диагностика работы OPC UA

Корректность настроек клиента OPC UA можно определить по наличию следующих сообщений в журнале диагностики:

Info: Starting the OPC UA Client Manager Server service

Info: The OPC UA Client Manager Server service has been started

Info: Starting the OPC UA Client Manager service

Info: Loading all OpcUaClientSettings

Info: All OpcUaClientSettings has been loaded

Info: The OPC UA Client Manager service has been started

Если в файле журнала событий такие сообщения отсутствуют или отличаются от указанных выше, можно сделать вывод о проблемах в работе клиента OPC UA.

Диагностика работы клиента MQTT

Корректность настроек клиента MQTT можно определить по наличию следующих сообщений в журнале диагностики:

Info: Starting the MQTT Publisher Manager Server service

Info: The MQTT Publisher Manager Server service has been started

Info: Starting the MQTT Publisher Manager service

Info: Starting the MQTT Publisher service

Info: The MQTT Publisher service has been started

Info: The MQTT Publisher Manager service has been started

Если в файле журнала событий такие сообщения отсутствуют или отличаются от указанных выше, можно сделать вывод о проблемах в работе клиента MQTT.

Диагностика службы навигации (маршрутизации) передаваемых данных

Успешность запуска службы маршрутизации можно определить по наличию следующих сообщений в журнале диагностики:

Info: Starting the Navigation Service service

Info: Loading all GuideSettings

Info: All GuideSettings has been loaded

Info: The Navigation Service service has been started

Если в файле журнала событий такие сообщения отсутствуют или отличаются от указанных выше, можно сделать вывод о проблемах в работе клиента OPC UA.

В начало

[Topic 240576]

Проверка и настройка даты и времени

Вы можете проверить дату, время и часовой пояс, выставленные на аппаратных часах шлюза, по следующему сообщению в журнале диагностики:

[2022-10-18 15:26:40.139 (UTC+0000)]

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

В случае если дата и время не соответствуют текущему точному времени по UTC, рекомендуется настроить дату и время, а также часовой пояс. Перед изменением даты, времени или часового пояса, карту microSD следует извлечь из устройства.

Настройка времени производится с помощью программы PuTTY в окне терминала.

Чтобы настроить время,

выполните команду time hh:mm:ss, где hh – часы, mm – минуты, ss – секунды.

Чтобы настроить часовой пояс,

выполните команду timezone -s hh:mm, где hh:mm – смещение от UTC в часах и минутах.

Чтобы отобразить текущее время,

выполните команду time.

Чтобы настроить дату,

выполните команду date mm/dd/yyyy, где mm – месяц, dd – день, yyyy – год.

Чтобы отобразить текущую дату,

выполните команду date.

В начало

[Topic 213426]

Журнал состояния

Kaspersky IoT Secure Gateway 100 позволяет настроить параметры журнала состояния системы. Журналы состояния системы хранятся в директории /logs, расположенной в разделе TGW-HW-LOG карты microSD.

Чтобы настроить параметры журнала состояния:

  1. Откройте в текстовом редакторе конфигурационный файл /logs/.log, расположенный в разделе TGW-HW-LOG карты microSD.

    Файл .log является скрытым, так как имя файла начинается с символа точки. Если файл не отображается в файловом менеджере, включите режим показа скрытых файлов.

  2. В значении параметра LogFileSizeLimit укажите максимальный размер в байтах одного файла журнала состояния системы. Например, LogFileSizeLimit=100000000.
  3. В значении параметра DirectorySizeLimit укажите максимальный размер в байтах для директории, в которой содержатся все файлы журнала состояния системы. Например, DirectorySizeLimit=1500000000.

    Kaspersky IoT Secure Gateway 100 не обрабатывает события переполнения дискового пространства, поэтому убедитесь, что размер директории для хранения журнала не превышает размер доступного дискового пространства раздела.

  4. Сохраните изменения в файле .log.

Пример конфигурационного файла:

.log

LogFileSizeLimit=100000000

DirectorySizeLimit=1500000000

В случае отсутствия файла .log, запись журнала не осуществляется.

Правила записи и ротации файлов журнала

Запись и ротация файлов журнала осуществляется по следующим правилам:

  • Если при записи превышен лимит на размер одного файла журнала, создается новый файл и запись осуществляется в новый файл.
  • Если при записи не удалось записать строку целиком из-за превышения лимита на размер одного файла журнала, то создается новый файл, строка записывается в него и дальнейшая запись осуществляется в новый файл.
  • Если при записи строки превышены лимиты на размеры одного файла и на все файлы журнала, то удаляется старый файл журнала, создается новый файл и дальнейшая запись осуществляется в новый файл.
  • Если при записи строки превышен лимит на все файлы журнала, то удаляется старый файл, а строка записывается в текущий файл.
  • Старые файлы журнала удаляются таким образом, чтобы обеспечить достаточный объем памяти для записи строки.
  • После каждой загрузки или перезагрузки шлюза создается новый файл для записи журнала.

Информация, записываемая в файлы журнала

В файлы журнала записывается следующая информация:

  • Статус инициализации аппаратных компонентов.
  • Статус загрузки KasperskyOS.
  • Статус инициализации системных компонент.
  • Статус инициализации и работы:
    • сетевых служб;
    • хранилища данных;
    • службы системного журналирования;
    • компонентов приложений:
      • менеджера и клиента OPC UA;
      • менеджера и клиента MQTT;
      • компонента передачи данных.
  • Передаваемые элементы данных.
  • Ошибки инициализации и загрузки.
В начало

[Topic 213328]

Лицензирование

Условия использования программы изложены в Лицензионном договоре или подобном документе, на основании которого используется программа.

В начало

[Topic 213329]

Предоставление данных

Kaspersky IoT Secure Gateway 100 не собирает, не использует и не обрабатывает пользовательские персональные данные.

В начало

[Topic 227620]

Известные ограничения

Ограничения OPC UA

Kaspersky IoT Secure Gateway 100 версии 2.0 имеет следующие ограничения поддержки протокола OPC UA:

  • Без перезагрузки Kaspersky IoT Secure Gateway 100 не применяются новые параметры безопасности сервера OPC UA после переподключения.
  • Не проводится проверка сертификата клиента OPC UA.
  • Для проверки сертификата сервера клиент OPC UA проверяет:
    • совпадение сертификата сервера с одним из сертификатов из списка доверенных сертификатов;
    • срок действия сертификата сервера.
  • Если настроено доверие любым сертификатам "trustList": "AllowAll", клиент OPC UA не проверяет сертификат сервера.
  • При указании в параметрах Kaspersky IoT Secure Gateway 100 режима и политики безопасности None, требуется также указать сертификат и криптографический ключ клиента OPC UA.
  • Поддерживаются только следующие типы данных, описанные в спецификации OPC UA:
    • Boolean;
    • SByte;
    • Byte;
    • Int16;
    • UInt16;
    • Int32;
    • UInt32;
    • Int64;
    • UInt64;
    • Float;
    • Double;
    • String;
    • DateTime;
    • XmlElement;
    • NodeId (только numeric и string);
    • ExpandedNodeId (только numeric и string);
    • StatusCode;
    • QualifiedName;
    • LocalizedText (частично);
    • Variant.
  • Полученные по протоколу OPC UA данные типа Double и Float, округляются с точностью до шести значащих цифр.
  • Для передачи данных по OPC UA сервер должен поддерживать наборы служб MonitoredItem и Subscription.
  • Доступно подключение только одного клиента OPC UA к одному серверу OPC UA.

Ограничения MQTT

Kaspersky IoT Secure Gateway 100 версии 2.0 имеет следующие ограничения поддержки протокола MQTT:

  • Доступно подключение только одного клиента MQTT к одному MQTT-брокеру.
  • Гарантия доставки (параметр qualityOfService) настраивается для всех сообщений от клиента MQTT.
  • Клиент MQTT не использует флаг retain при отправке сообщений, а также для LWT-сообщения (сообщения, которое уведомляет о некорректном отключении клиента).
  • Установка значения 0 для параметра keepAlive клиента MQTT не приводит к отключению механизма "keep alive" (механизма для отключения клиента на основании его бездействия).
  • Клиент MQTT игнорирует отсутствие ответа от MQTT-брокера в течение длительного времени и не закрывает соединение.
  • В случае обрыва соединения небольшое количество публикуемых сообщений может быть утеряно после восстановления соединения и при наличии свободного места в буфере.
  • На ранних этапах инициализации клиента MQTT информация от него не выводится в журнал состояния Kaspersky IoT Secure Gateway 100. Это связано с ограничениями, накладываемыми политиками безопасности KasperskyOS.

Ограничения TLS

Kaspersky IoT Secure Gateway 100 версии 2.0 имеет следующие ограничения поддержки протокола TLS:

Прочие ограничения

Прочие ограничения Kaspersky IoT Secure Gateway 100 версии 2.0:

  • До истечения значения срока аренды IP-адреса (lease time) Kaspersky IoT Secure Gateway 100 не применяет новые сетевые настройки, полученные от DHCP-сервера.
  • В журнале состояния Kaspersky IoT Secure Gateway 100 для обоих сетевых интерфейсов используется имя en0.
  • Сообщения о потере подключения на внутреннем или внешнем сетевом интерфейсах не выводятся в журнал состояния Kaspersky IoT Secure Gateway 100 сразу после обрыва связи. Такие сообщения могут появиться в журнале состояния при продолжительном отсутствии подключения, либо не появиться никогда.
  • При отключении питания Kaspersky IoT Secure Gateway 100 не сохраняет неотправленные данные, так как не хранит их в постоянной памяти.
  • Kaspersky IoT Secure Gateway 100 не обрабатывает события переполнения дискового пространства при ведении журнала состояния. При настройке параметров журнала состояния убедитесь, что размер директории для хранения журнала не превышает размер доступного дискового пространства раздела TGW-HW-LOG карты microSD.
В начало

[Topic 240122]

Другие источники информации

Дополнительные документы, к которым вы можете обратиться в процессе установки, настройки и использования Kaspersky IoT Secure Gateway 100:

В начало

[Topic 90]

Глоссарий

Kaspersky IoT Secure Gateway 100

Программно-аппаратный комплекс на базе устройства для промышленного интернета вещей Siemens SIMATIC IOT2040 с установленной операционной системой KasperskyOS и прикладным программным обеспечением. Kaspersky IoT Secure Gateway 100 предназначен для работы в качестве безопасного шлюза промышленного интернета вещей.

KasperskyOS

Микроядерная операционная система для построения безопасных решений.

Message Queuing Telemetry Transport (MQTT)

Сетевой протокол, работающий поверх стека протоколов TCP/IP, предназначенный для обмена сообщениями между устройствами в Интернете вещей.

MQTT-брокер

Сервер, принимающий, фильтрующий и пересылающий сообщения по протоколу MQTT.

MQTT-топик

Иерархический путь к источнику данных, на базе которого отправляются сообщения по протоколу MQTT.

Open Platform Communications Unified Architecture (OPC UA)

Спецификация, определяющая протоколы и механизм передачи данных в промышленных сетях, а также взаимодействие устройств в них.

TLS

Безопасный протокол передачи данных в локальных сетях и в интернете с использованием шифрования. TLS используется в веб-приложениях для создания защищенных соединений между клиентом и сервером.

Безопасный шлюз Интернета вещей

Система, которая обеспечивает безопасную передачу пользовательского трафика между датчиками и платформой Интернета вещей.

Доступность

Состояние информации (ресурсов информационной системы), при котором субъекты, имеющие право доступа, могут реализовывать его беспрепятственно.

Интернет вещей

Вычислительная сеть электронных устройств ("вещей"), оснащенных встроенными возможностями взаимодействия с внешней средой или друг с другом без участия человека.

Источник данных

Обособленный источник данных для обмена сообщениями между устройствами в Интернете вещей. Например, сервер OPC UA на управляющем контроллере станка.

Кибериммунная информационная система

Система, гарантирующая достижение целей безопасности во всех возможных сценариях использования системы, предусмотренных разработчиками.

Клиент

Участник клиент-серверного взаимодействия, делающий запросы к серверу и получающий на них ответы.

Конфиденциальность

Свойство информации, состоящее в том, что она не может быть доступна для ознакомления неавторизованным пользователям и/или процессам.

Корневой сертификат

Сертификат корневого удостоверяющего центра.

Корневой удостоверяющий центр

Удостоверяющий центр, над которым нет вышестоящего удостоверяющего центра.

Криптографический ключ

Компонент пары криптографических ключей, используемых для асимметричной криптографии. Ключи могут быть открытыми или закрытыми.

Параметры безопасности клиента OPC UA

Совокупность настроек Kaspersky IoT Secure Gateway 100, связанных с безопасностью. Вы можете вносить в них изменения, редактируя конфигурационные файлы, которые находятся на карте microSD.

Политики безопасности OPC UA

Набор механизмов и характеристик, включая алгоритмы подписи и шифрования и алгоритм получения криптографического ключа, которые могут обеспечивать безопасность соединения между клиентом и сервером OPC UA.

Предположения безопасности

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

Режим безопасности

Режим, при котором клиент и сервер договариваются о наличии или отсутствии шифрования и цифровой подписи передаваемых данных.

Сервер

Участник клиент-серверного взаимодействия, выполняющий обработку запросов от клиента.

Сертификат

Структура данных с цифровой подписью, содержащая открытый криптографический ключ и идентификатор клиента или сервера.

Сертификат конечного субъекта

Сертификат, содержащий в себе открытый криптографический ключ, который может быть использован для проверки или валидации конечного субъекта (например, клиента MQTT).

Узел данных

Структурный элемент информационной модели OPC UA, содержащий данные и метаданные.

Цели безопасности

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

Целостность

Состояние информации (ресурсов информационной системы), при котором ее изменение осуществляется только преднамеренно субъектами, имеющими право на изменение.

Цепочка сертификатов

Объединение промежуточных сертификатов, в котором на пути от сертификата конечного субъекта до корневого сертификата может быть любое количество промежуточных сертификатов.

Цифровая подпись

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

Шифрование

Преобразование данных из читаемого формата в кодированный. Зашифрованные данные могут быть прочитаны или обработаны только после расшифровки.

В начало

[Topic 213341]

Информация о стороннем коде

Информация о стороннем коде содержится в файле legal_notices.txt, который расположен на карте памяти microSD в корневой директории раздела HW-BOOT.

В начало

[Topic 213342]

Уведомления о товарных знаках

Зарегистрированные товарные знаки и знаки обслуживания являются собственностью их правообладателей.

Linux – товарный знак Linus Torvalds, зарегистрированный в США и в других странах.

Windows является товарным знаком группы компаний Microsoft.

Siemens, MindSphere и Simatic – зарегистрированные товарные знаки Siemens AG.

В начало