OPC UA: различия между версиями
(не показано 12 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
=Установка= | =Установка= | ||
1. Загрузить файл инсталлятора OPC UA сервера на станок. | 1. Загрузить файл инсталлятора OPC UA сервера на станок. | ||
− | 2. Запустить файл от имени администратора | + | |
+ | 2. Запустить файл от имени администратора. | ||
+ | |||
3. При установке потребуется указать IP контроллера во внутренней сети станка. | 3. При установке потребуется указать IP контроллера во внутренней сети станка. | ||
− | 4. Прописать в исключения брэндмауэра порт 4840 | + | |
+ | 4. Прописать в исключения брэндмауэра порт 4840. | ||
+ | |||
=Сертификаты безопасности= | =Сертификаты безопасности= | ||
Протокол OPC UA поддерживает шифрование трафика. OPC UA сервера и драйвер на стороне DPA также поддерживают использование сертификатов. | Протокол OPC UA поддерживает шифрование трафика. OPC UA сервера и драйвер на стороне DPA также поддерживают использование сертификатов. | ||
+ | |||
+ | ==Генерация сертификата с помощью PowerShell== | ||
+ | Ниже пример команд, с помощью которых можно генерировать x509 v3 сертификаты. Работает для версии PowerShell 7.1 и выше. | ||
+ | |||
+ | Сгенерировать сертификат: | ||
+ | <pre> $cert = New-SelfSignedCertificate -Subject $certSubject -DnsName $certDns -Type Custom -KeyAlgorithm RSA -KeyLength 2048 -KeyExportPolicy Exportable -KeyUsage DigitalSignature,DataEncipherment,KeyEncipherment -CertStoreLocation $certLocation; </pre> | ||
+ | где | ||
+ | *$certSubject = "O=MyCompany,OU=MyDivision,CN=MyDevice"; | ||
+ | *$certDns = "deviceName"; | ||
+ | *$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 | ||
=Лицензирование= | =Лицензирование= | ||
Строка 42: | Строка 67: | ||
=Обновление= | =Обновление= | ||
− | + | Для обновления обязательно требуются ранее сгенерированные и установленные сертификаты, если они утеряны, то требуется запускать файл обновления непосредственно на станке. | |
− | + | ||
− | + | Для удаленного обновления используется утилита dpa.opcua.rs (по вопросам получения утилиты свяжитесь с вашим менеджером компании X-tensive) | |
− | + | ||
+ | |||
+ | Для работы с утилитой требуется запустить командную строку и перейти в директорию, где расположена утилита, например, с помощью команды: | ||
<pre> cd C:\Users\Admin\DPA </pre> | <pre> cd C:\Users\Admin\DPA </pre> | ||
− | + | Для обновления также следует скачать файл обновления на компьютер, с которого запускается утилита для обновления. | |
− | + | ==При установленном сертификате== | |
− | 2. | + | Запускаем команду: |
− | + | <pre>dpa.opcua.rs target 192.168.1.100 execute upgrade C:\Users\Admin\dpa.ua.cndex.install64_v1.2.3.exe </pre> | |
− | Проверяем , что | + | Проверяем, что обновление встало корректно |
− | + | <pre>dpa.opcua.rs target 192.168.1.100 </pre> | |
− | + | В строке version должна быть устанавливаемая версия. | |
− | + | ==Без установленного сертификата== | |
− | + | Если сертификат не установлен на компьютер, с которого производится обновление, то можно указать их вручную при обновлении. <br> | |
+ | Найти ранее сгенерированные сертификаты, например сертификаты с именем ''Upgrade.cert'' and ''upgrade.key'' | ||
+ | <pre>dpa.opcua.rs target 192.168.1.100 execute upgrade C:\Users\Admin\dpa.ua.cndex.install64_v1.2.3.exe --key “cert\upgrade.key” –cert “cert\upgrade.cert” </pre> | ||
+ | Проверяем, что обновление встало корректно | ||
+ | <pre>dpa.opcua.rs target 192.168.1.100 </pre> | ||
+ | В строке version должна быть устанавливаемая версия. |
Текущая версия на 00:57, 8 декабря 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
Красной линией подчеркнут 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" - адрес файла-лицензии
При успешном выполнении команды получаем результат:
Обновление
Для обновления обязательно требуются ранее сгенерированные и установленные сертификаты, если они утеряны, то требуется запускать файл обновления непосредственно на станке.
Для удаленного обновления используется утилита dpa.opcua.rs (по вопросам получения утилиты свяжитесь с вашим менеджером компании X-tensive)
Для работы с утилитой требуется запустить командную строку и перейти в директорию, где расположена утилита, например, с помощью команды:
cd C:\Users\Admin\DPA
Для обновления также следует скачать файл обновления на компьютер, с которого запускается утилита для обновления.
При установленном сертификате
Запускаем команду:
dpa.opcua.rs target 192.168.1.100 execute upgrade C:\Users\Admin\dpa.ua.cndex.install64_v1.2.3.exe
Проверяем, что обновление встало корректно
dpa.opcua.rs target 192.168.1.100
В строке version должна быть устанавливаемая версия.
Без установленного сертификата
Если сертификат не установлен на компьютер, с которого производится обновление, то можно указать их вручную при обновлении.
Найти ранее сгенерированные сертификаты, например сертификаты с именем Upgrade.cert and upgrade.key
dpa.opcua.rs target 192.168.1.100 execute upgrade C:\Users\Admin\dpa.ua.cndex.install64_v1.2.3.exe --key “cert\upgrade.key” –cert “cert\upgrade.cert”
Проверяем, что обновление встало корректно
dpa.opcua.rs target 192.168.1.100
В строке version должна быть устанавливаемая версия.