OpenSCADA

Модулі/SSL

This page is a translated version of the page Modules/SSL and the translation is 100% complete.

English • ‎mRussian • ‎Українська
Модуль Ім'я Версія Ліцензія Джерело Мови Платформи Тип Автор
SSL SSL 4.5 GPL2 tr_SSL.so en,uk,ru,de x86,x86_64,ARM Транспорт Роман Савоченко
Опис
Надає транспорт, заснований на безпечному шарі сокетів. Використано OpenSSL та підтримуються SSL-TLS залежно від версії бібліотеки.
  • Спонсорування, зовнішнього файлу сертифікатів на 0.3 ЛД[!]: Вінницька Птахофабрика

Модуль надає до програми підтримку транспортів, заснованих на Шарі Безпечних Сокетів (SSL). У основі модуля лежить бібліотека OpenSSL. Підтримуються вхідні та вихідні транспортні протоколи SSL-TLS, загальний перелік яких залежить від їх доступності у бібліотеці OpenSSL та обирається найбільш актуальний і безпечний.

Додати нові вхідні та вихідні безпечні сокети можна за посередництвом конфігурації транспортної підсистеми у будь якому конфігураторі OpenSCADA.

Contents

На нових SSL-версіях вкладка "Транспорти" модуля доповнена інформацією щодо загальних-контекстних шифрів окремо для вхідної-серверної частини і вихідної-клієнтської, дивіться рисунок 1.

Рис.1. Вкладка "Транспорти" із SSL шифрами.

1 Вхідні транспорти

Сконфігурований та запущений вхідний транспорт відкриває серверний SSL-сокет для очікування підключень клієнтів, крім ініціативного підключення. SSL-сокет є багато-потоковим, тобто при підключенні клієнту створюється клієнтське SSL-з'єднання та новий потік, у якому здійснюється обслуговування клієнту. Серверний SSL-сокет на цей час переходить до очікування запитів від нового клієнту. Таким чином досягається паралельне обслуговування клієнтів.

Кожний вхідний транспорт пов'язується з одним або декількома з доступних транспортних протоколів, якому передаються вхідні повідомлення. Разом з транспортним протоколом підтримується механізм об'єднання шматків розрізнених при передачі запитів.

Прочитати про механізм пасивного збору та ініціативні підключення ви можете у відповідній частині документу "Збір даних в OpenSCADA".

Рис.2. Загальні діалоги конфігурації вхідного SSL-транспорту.

За допомогою основного діалогу можна встановити:

За допомогою додаткового діалогу можна встановити:

At.png Приховано у підключеному стані.
At.png Відстежується у 60 секунд щодо оновлення, відтак перепідключення транспорту для актуалізації.
At.png Вимикати цю функцію не рекомендується оскільки властивість мережі TCP/IP не гарантує повідомлення серверу про відключення з'єднання, скажемо у випадку пропадання живлення на клієнті. У результаті чого можуть назавжди залишатися відкриті клієнтські підключення, а за досягненням ліміту сервер припинить приймати нові!

2 Вихідні транспорти

Сконфігурований та запущений вихідний транспорт відкриває з'єднання з вказаним сервером. При розриві з'єднання вихідний транспорт зупиняється. Для відновлення з'єднання транспорт треба знову запустити, що всі протоколи роблять автоматично.

Транспорт підтримує пряме визначення декількох адрес серверу та опрацювання всіх IP-адрес у які резолвиться символьна адреса, що дозволяє будувати вертикальне резервування безпосередньо транспортом, який буде автоматично підключатися до першого доступного серверу.

Рис.3. Загальні діалоги конфігурації вихідного SSL-транспорту.

За допомогою основного діалогу можна встановити:

За допомогою додаткового діалогу можна встановити:

At.png Приховано у підключеному стані.
Може бути пріоритетно визначено другим глобальним аргументом поля адреси, на кшталт "localhost:123||5:1".
Може бути пріоритетно визначено третім глобальним аргументом поля адреси, на кшталт "localhost:123||5:1||3".

3 Сертифікати та ключі

Для повноцінного функціювання модуля необхідні сертифікати і приватні ключі. У випадку з вхідним SSL-транспортом (сервером) вони обов'язкові. У випадку з вихідним SSL-транспортом вони можуть і не встановлюватися, хоча їх використання бажане.

Простішою конфігурацією сертифікату є само-підписаний сертифікат та приватний ключ. Нижче описано процедуру їх створення за допомогою утиліти openssl:

# Генерація секретного ключа
openssl genrsa -out ./key.pem -des3 -rand /var/log/messages 2048
# Генерація само-підписаного сертифікату
openssl req -x509 -new -key ./key.pem -out ./selfcert.pem -days 365

Далі вміст файлів "selfcert.pem" та "key.pem" копіюються до текстового поля сертифікату та ключа. Пароль приватного ключа встановлюється у відповідному полі.

Modules/SSL/uk - GFDLMarch 2024OpenSCADA 0.9.7