Надає транспорт базований на безпечному шарі сокетів. Використано OpenSSL та підтримуються SSLv3, TLSv1, TLSv1.1, TLSv1.2, DTLSv1.
Ліцензія:
GPL
Вступ
Модуль транспорту SSL надає до системи підтримку транспортів заснованих на шарі безпечних сокетів (SSL). У основі модуля лежить бібліотека OpenSSL. Підтримуються вхідні та вихідні транспорти протоколів SSLv3 та TLSv1.
Додати нові вхідні та вихідні транспорти можна за посередництвом конфігурації транспортної підсистеми у будь якому конфігураторі системи OpenSCADA.
1. Вхідні транспорти
Сконфігурований та запущений вхідний транспорт відкриває серверний SSL-сокет для очікування з'єднання клієнтів. SSL-сокет є багато-потоковим, тобто. при підключенні клієнту створюється клієнтське SSL-з'єднання та новий потік у якому здійснюється обслуговування клієнту. Серверний SSL-сокет на цей час переходить до очікування запитів від нового клієнту. Таким чином досягається паралельне обслуговування клієнтів.
Кожний вхідний транспорт обов'язково зв'язується з одним з доступних транспортних протоколів, якому передаються вхідні повідомлення. Спільно з транспортним протоколом підтримується механізм об'єднання шматків роздрібнених, при передачі, запитів.
Діалог конфігурації вхідного SSL-транспорту зображено на рис.1.
Стан транспорту, а саме: "Статус", "Виконується", ім'я БД (яка містить конфігурацію) та перелік з інформацією про поточні підключення.
Ідентифікатор, ім'я та опис транспорту.
Адреса транспорту у форматі "[адреса]:[порт]:[режим]" де:
адреса — Адреса, на якій відкривається SSL. Має бути однією з адрес хосту. Якщо вказано "*" то SSL буде доступний на всіх інтерфейсах хосту. Допускаються як символьне, так й IP представлення адреси.
порт – Мережевий порт, на якому відкривається SSL. Можливе вказання символьного ім'я порту (відповідно до /etc/services).
режим – SSL-режим та версія (SSLv3, SSLv23, TLSv1). По замовченню та при помилці використовується SSLv23.
Обрання транспортного протоколу.
Стан, у який переводити транспорт при завантажені: "Запускати".
Сертифікати, приватний ключ SSL та пароль приватного ключа SSL.
Максимальна кількість обслугованих клієнтів, максимальна кількість обслугованих клієнтів за хостами та розмір вхідного буферу.
Keep alive запитів. Закриття підключення після вказаної кількості запитів. Нульове значення для вимкнення (не закривається ніколи).
Keep alive час очікування, секунд. Закриття підключення після відсутності запитів протягом вказаного часу. Нульове значення для вимкнення (не закривається ніколи).
Вимикати цю функцію не рекомендується оскільки властивість мережі TCP/IP не гарантує повідомлення серверу про відключення з'єднання, скажемо у випадку пропадання живлення на клієнті. У результаті чого можуть назавжди залишатися відкриті клієнтські підключення, а за досягненням ліміту сервер припинить приймати нові!
Пріоритет задач транспорту.
2. Вихідні транспорти
Сконфігурований та запущений вихідний транспорт відкриває SSL підключення з вказаним сервером. При розриві з'єднання, вихідний транспорт вимикається. Для відновлення з'єднання транспорт треба знову запустити.
Головну вкладку сторінки конфігурації вихідного SSL-транспорту зображено на рис.2.
Рис.2. Головна вкладка сторінки конфігурації вихідного SSL-транспорту.
За допомогою цього діалогу можна встановити:
Стан транспорту, а саме: "Статус", "Виконується" та ім'я БД яка містить конфігурацію.
Ідентифікатор, ім'я та опис транспорту.
Адреса транспорту у форматі "[адреса]:[порт]:[режим]", де:
адреса — Адреса, з якою здійснюється з'єднання. Допускається як символьне так й IP представлення адреси.
порт — Мережевий порт, з яким здійснюється підключення. Можливо вказання символьного ім'я порту (відповідно до /etc/services).
режим — SSL-режим та версія (SSLv3, SSLv23, TLSv1). По замовченню та при помилці використовується SSLv23
Стан, у який переводити транспорт при завантаженні: "Запускати".
Сертифікати, приватний ключ SSL та пароль приватного ключа SSL.
Таймаут по замовченню для очікування з'єднання та відповіді, окремо.
3. Сертифікати та ключі
Для повноцінної роботи модуля потрібні сертифікати та приватні ключі. У випадку з вхідним SSL-транспортом (сервером) вони обов'язкові. У випадку з вихідним SSL-транспортом вони можуть й не встановлюватися хоча їх використання бажане.
Простішою конфігурацією сертифікату є само-підписаний сертифікат та приватний ключ. Нижче описано процедуру їх створення з допомогою утиліти openssl:
Далі вміст файлів "selfcert.pem" та "key.pem" копіюються до текстового поля сертифікату та ключа. Пароль приватного ключа встановлюється у відповідному полі.