Описание

Программное обеспечение АРМ "Скиф" предоставляет упрощенный web-сервер для интеграции с web приложениями. Суть упрощения состоит в том, что к этому серверу можно подключиться только по протоколу WebSocket. Браузер не может непосредственно подключиться к этому серверу и запросить web страницу. Для подключения нужен заранее подготовленный файл html. Этот файл можно просто скопировать на клиентскую машину и запустить в браузере (см. рис.1), а можно разместить на полноценном web сервере, например apache/ngnix/lighttp (см. рис.2). Если Вы нажмете в меню этой страницы кнопку "Подключение ", то вы как раз запустите файл "work.htm" и браузер попытается подключиться к серверу "Скиф" по адресу 127.0.0.0 с паролем 123456.

Настройка подключения

Для успешного подключения браузера к серверу "Скиф", необходимо настроить параметры подключения в файле config.js. Сервер "Скиф" так же должен быть настроен. В конфигураторе сервера, на вкладке "АРМы", необходимо добавить АРМ, указать с какого адреса разрешено подключение, задать пароль подключения. В файле config.js необходимо задать пароль для подключения к серверу. Пароль необходимо захешировать. в хэш SHA1:

Рисунок 1. Подключение напряму к серверу АРМ "Скиф".


Рисунок 2. Использование стороннего web-сервера для загрузки файла "work.htm"

Настройка шифрования TLS (если требуется шифрование)

  1. В конфигураторе на вкладке «Основные» необходимо установить галочку «Шифрование для WebSocket».
  2. В файле «WebSocket\config.js» необходимо изменить строку «wsUri = "ws:» на «wsUri = "wss:».
  3. В отдельнм каталоге необходимо сгенерировать сертификат при помощи программы openssl:
    • Перед использованием openssl в ОС Windows, необходимо указать путь к конфигурационному файлу. Для этого выполним команду: set OPENSSL_CONF=c:\OpenSSL-Win32\bin\openssl.cfg
    • Создаём корневой ключ: openssl genrsa -out ca.key 2048
    • Создаём ключ сервера: openssl genrsa -out server-key.pem 2048
    • Создаём корневой сертификат: openssl req -x509 -new -key ca.key -days 10000 -out ca.pem
      Произвольно отвечаем на вопросы программы, кроме вопроса "Organization Name (eg, company):" - указываем имя организации чтобы в дальнейшем отличить сертификат среди прочх.
    • Создаем сертификат сервера: openssl req -new -key server-key.pem -out server-crt.pem
      В вопросе "Common Name (e.g. server FQDN or YOUR name) []:" важно указать имя сервера (домен или IP), например: "myserver.ru".
    • Подписываем сертификат сервера корневым сертификатом: openssl x509 -req -in server-crt.pem -CA ca.pem -CAkey ca.key -CAcreateserial -out server-crt.pem -days 5000
  4. Необходимо скопировать следующие файлы в каталог Certificates:
    • server-key.pem - приватный ключ сервера,
    • server-crt.pem - сертификат сервера,
    • ca.pem - корневой сертификат CA.
  5. Сертификат ca.pem необходимо импортировать в браузер. В Chromium: "Настройки" -> "Показать дополнительные настройки" -> "Управление сертификатами" -> "Центры сертификации" -> "Импорт"