Модуль | Ім'я | Версія | Ліцензія | Джерело | Мови | Платформи | Тип | Автор | Опис |
---|---|---|---|---|---|---|---|---|---|
SSL | SSL | 1.5 | GPL2 | tr_SSL.so | en,uk,ru,de | x86,x86_64,ARM | Транспорт | Роман Савоченко | Надає транспорт базований на безпечному шарі сокетів. Використано OpenSSL та підтримуються SSLv3, TLSv1, TLSv1.1, TLSv1.2, DTLSv1. |
Модуль транспорту SSL надає до системи підтримку транспортів заснованих на шарі безпечних сокетів (SSL). У основі модуля лежить бібліотека OpenSSL. Підтримуються вхідні та вихідні транспорти протоколів SSLv3 та TLSv1.
Додати нові вхідні та вихідні транспорти можна за посередництвом конфігурації транспортної підсистеми у будь якому конфігураторі системи OpenSCADA.
Сконфігурований та запущений вхідний транспорт відкриває серверний SSL-сокет для очікування з'єднання клієнтів. SSL-сокет є багато-потоковим, тобто. при підключенні клієнту створюється клієнтське SSL-з'єднання та новий потік у якому здійснюється обслуговування клієнту. Серверний SSL-сокет на цей час переходить до очікування запитів від нового клієнту. Таким чином досягається паралельне обслуговування клієнтів.
Кожний вхідний транспорт обов'язково зв'язується з одним з доступних транспортних протоколів, якому передаються вхідні повідомлення. Спільно з транспортним протоколом підтримується механізм об'єднання шматків роздрібнених, при передачі, запитів.
Діалог конфігурації вхідного SSL-транспорту зображено на рисунок 1.
За допомогою цього діалогу можна встановити:
Сконфігурований та запущений вихідний транспорт відкриває SSL підключення з вказаним сервером. При розриві з'єднання, вихідний транспорт вимикається. Для відновлення з'єднання транспорт треба знову запустити.
Головну вкладку сторінки конфігурації вихідного SSL-транспорту зображено на рис.2.
За допомогою цього діалогу можна встановити:
Для повноцінної роботи модуля потрібні сертифікати та приватні ключі. У випадку з вхідним 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" копіюються до текстового поля сертифікату та ключа. Пароль приватного ключа встановлюється у відповідному полі.