OPC UA: различия между версиями

Материал из DPA
Перейти к навигации Перейти к поиску
Строка 16: Строка 16:
 
*$certDns = "deviceName";
 
*$certDns = "deviceName";
 
*$certLocation = "Cert:\CurrentUser\My";
 
*$certLocation = "Cert:\CurrentUser\My";
 +
 +
Преобразование файла в формат PEM:
 +
<pre> $certOut = [System.Security.Cryptography.PemEncoding]::Write("CERTIFICATE", $cert.RawData);
 +
[IO.File]::WriteAllBytes("my.cert", $certOut); </pre>
 +
 +
Экспорт приватного ключа:
 +
<pre> $keyOut = [System.Security.Cryptography.PemEncoding]::Write("PRIVATE KEY", $cert.PrivateKey.ExportPkcs8PrivateKey());
 +
[IO.File]::WriteAllBytes("my.key", $keyOut); </pre>
 +
В результате выполнения последней команды будут созданы приватный и публичный ключ.
 +
*Приватный ключ: my.key
 +
*Публичный ключ: my.cert
  
 
=Лицензирование=
 
=Лицензирование=

Версия 05:20, 29 ноября 2022

Установка

1. Загрузить файл инсталлятора OPC UA сервера на станок. 2. Запустить файл от имени администратора 3. При установке потребуется указать IP контроллера во внутренней сети станка. 4. Прописать в исключения брэндмауэра порт 4840

Сертификаты безопасности

Протокол OPC UA поддерживает шифрование трафика. OPC UA сервера и драйвер на стороне DPA также поддерживают использование сертификатов.

Генерация сертификата с помощью PowerShell

Ниже пример команд, с помощью которых можно генерировать x509 v3 сертификаты. Работает для версии PowerShell 7.1 и выше.

Сгенерировать сертификат:

 $cert = New-SelfSignedCertificate -Subject $certSubject -DnsName $certDns -Type Custom -KeyAlgorithm RSA -KeyLength 2048 -KeyExportPolicy Exportable -KeyUsage DigitalSignature,DataEncipherment,KeyEncipherment -CertStoreLocation $certLocation; 

где

  • $certSubject = "O=MyCompany,OU=MyDivision,CN=MyDevice";
  • $certDns = "deviceName";
  • $certLocation = "Cert:\CurrentUser\My";

Преобразование файла в формат PEM:

 $certOut = [System.Security.Cryptography.PemEncoding]::Write("CERTIFICATE", $cert.RawData);
[IO.File]::WriteAllBytes("my.cert", $certOut); 

Экспорт приватного ключа:

 $keyOut = [System.Security.Cryptography.PemEncoding]::Write("PRIVATE KEY", $cert.PrivateKey.ExportPkcs8PrivateKey());
[IO.File]::WriteAllBytes("my.key", $keyOut); 

В результате выполнения последней команды будут созданы приватный и публичный ключ.

  • Приватный ключ: my.key
  • Публичный ключ: my.cert

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

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

Для работы с удаленным OPC-сервером требуется утилита dpa.opcua.rs (по вопросам получения утилиты свяжитесь с вашим менеджером компании X-tensive) Работа с утилитой осуществляется через командную строку. Для запуска требуется перейти в директорию, где расположена утилита, например, с помощью команды:

 cd C:\Users\Admin\DPA 

Процесс получения лицензии:

1.Запрос информации по серверу

 C:\Users\AdminPC\Desktop\DPA\dpa.opcua.rs target 192.168.101.51 

Opcua target.png

Красной линией подчеркнут HID, который требуется скопировать.

2. Сделать запрос лицензии в Личном кабинете по адресу:lm.rundpa.com.

3. Дождаться подтверждения запроса, скачать файл лицензии.

4. Скопировать файл лицензии на ПК, с которого запускается dpa.opcua.rs.

5. Активировать лицензию

 C:\Users\AdminPC\Desktop\DPA\dpa.opcua.rs target 192.168.101.51 install license C:\Users\AdminPC\Desktop\DPA\license.txt
  • "C:\Users\AdminPC\Desktop\DPA\dpa.opcua.rs - вызов утилиты
  • "192.168.101.51" - IP-адрес, где установлен OPC-сервер
  • "C:\Users\AdminPC\Desktop\DPA\license.txt" - адрес файла-лицензии

При успешном выполнении команды получаем результат:

Opcua install license.png

Обновление

Без использования сертификатов безопасности

dpa.opcua.rs (по вопросам получения утилиты свяжитесь с вашим менеджером компании X-tensive)

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

 cd C:\Users\Admin\DPA 

1. Скачать инсталлятор новой версии OPC UA сервера на компьютер, где установлена DPA.

2. Запускаем командную строку, перес dpa.opcua.rs Пишем dpa.opcua.rs target (ip станка) execute upgrade (указываем путь до файла с новой версией, пишем название файла) Проверяем , что версия встала Запускаем CMD в папке с dpa.opcua.rs Пишем dpa.opcua.rs target (ip станка) Ищем строку version Если версия правильная, то все готово