Configurar certificados de seguridad personalizados para OPC UA en PLCnext Control
Esta es una actualización de un artículo publicado originalmente en noviembre de 2018.
Todos los PLCnext Controls incluyen un servidor OPC UA embebido. Este servidor, como todos los servidores OPC UA, incluye la opción de establecer conexiones seguras con clientes usando Criptografía de Clave Pública. Esta guía describe cómo usar su propio certificado de seguridad (incluyendo su propia clave privada) para configurar una conexión OPC UA segura con un PLCnext Control.
Para información general sobre cómo gestionar certificados del servidor OPC UA, por favor consulte:
- La sección Configuración OPC UA del sistema de ayuda integrado de PLCnext Engineer.
- El PLCnext Info Center:
- Servidor OPC UA embebido (eUA)
- Autenticación de Certificados.
Introducción
El servidor OPC UA embebido de PLCnext Control requiere certificados X.509 para asegurar comunicaciones de confianza con clientes OPC UA. Hay cuatro tipos principales de certificados que pueden usarse:
Opción 1 - Certificado autofirmado generado automáticamente.
- Los certificados requeridos se crean automáticamente por el PLC.
- Fácil de configurar.
- Útil para pruebas y para uso permanente en LANs seguras.
Opción 2 - Certificado autofirmado generado manualmente.
- Sin beneficios de seguridad adicionales sobre la Opción 1, pero da al administrador más control sobre la gestión de certificados.
Opción 3 - Certificado firmado por su propia Autoridad de Certificación (CA).
- Sin beneficios de seguridad adicionales sobre las Opciones 1 y 2, pero permite una gestión más estructurada de certificados.
Opción 4 - Certificado emitido por una Autoridad de Certificación de confianza
- Requiere la compra de un certificado de una CA de terceros de confianza como Symantec o GeoTrust. Esta es la opción recomendada para redes públicas u otras redes inseguras, porque todos los clientes deberían aceptar un certificado firmado por una CA de confianza.
Requisitos previos
Para realizar los siguientes procedimientos con éxito necesitará:
- Una comprensión básica de Criptografía de Clave Pública y certificados X.509.
- Una comprensión básica de OPC, y (específicamente) tecnología OPC UA.
Los procedimientos descritos en esta guía se prepararon usando el siguiente hardware y software:
- Controlador AXC F 2152, versión de firmware 2020.6.1
- PLCnext Engineer versión 2020.6
- UAExpert versión 1.5.1
- XCA versión 2.3.0 con una base de datos ya creada
Lectura de fondo
- Criptografía de clave pública
- X.509
- Creación de certificados X.509 (PDF)
- ¿Qué es OPC?
- Arquitectura Unificada OPC
- El Modelo de Seguridad OPC UA para Administradores (PDF)
Procedimientos
Opción 1 - Certificado autofirmado generado automáticamente
Esta es la opción predeterminada al crear un nuevo proyecto en PLCnext Engineer.
- Siga el procedimiento para configurar el servidor OPC UA en el video del canal de YouTube de Soporte Técnico.
Esto crea automáticamente un certificado autofirmado en la Tienda de Identidad llamada OPC UA-self-signed, que puede verse en la página de gestión basada en web del PLC, en la ventana Autenticación de Certificados (en la sección Seguridad).
Ahora, al establecer una conexión al servidor OPC UA desde UA Expert, se puede ver el nombre del certificado autofirmado "eUAServer@axc-f-2152-1":
Como el certificado no está firmado por una CA de confianza, es necesario que el usuario confíe explícitamente en este certificado.
Después de confirmar que el certificado puede confiarse, UA Expert puede mostrar el error "BadCertificateHostNameInvalid". Esto es porque la URL que se usó para conectar al servidor OPC UA no coincide con ninguna entrada en los campos IPAddresses o DNSnames del certificado (que se pueden ver en la sección Extensiones UA arriba). Esto se puede corregir añadiendo las entradas correspondientes al certificado, lo cual puede hacerse en la ventana de Configuración OPC UA en PLCnext Engineer.
Tenga en cuenta que, aunque UA Expert da la opción de ignorar errores BadCertificateHostNameInvalid y seguir conectándose al servidor, muchos otros clientes OPC UA simplemente se negarán a conectarse cuando encuentren este error.
Opción 2 - Certificado autofirmado generado manualmente
- En XCA, cree un nuevo certificado autofirmado.
- Abra (o cree) una base de datos bajo el elemento de menú "Archivo".
- En la pestaña "Certificados", haga clic en el botón "Nuevo Certificado":
- En el siguiente cuadro de diálogo, la pestaña Origen estará activa. La opción de Firmado "crear un certificado autofirmado" ya debería estar marcada por defecto:
- Cambie a la pestaña "Sujeto" y complete los campos. Un ejemplo se muestra a continuación.
- Haga clic en el botón "Generar una nueva clave". Esto genera una clave privada única para este certificado.
- En la pestaña "Extensiones", establezca la Validez del certificado al período requerido y ponga una entrada en el campo "X509v3 Subject Alternative Name". Este campo no debe estar vacío - esto es un requisito de la especificación OPC UA. Los campos IPAddresses y DNSnames mencionados en la Opción 1 corresponden a estos campos.
- Haga clic en Aceptar para crear el certificado.
- Después de que el certificado se cree, seleccione el certificado en la ventana principal de XCA y haga clic en "Exportar". Exporte el certificado y la clave privada sin encriptar, en el formato "PEM + key (*.pem)":
- En PLCnext Engineer, cambie el campo "Certificado" del servidor OPC UA de "Autofirmado por controlador" a "Archivo en controlador".
- Descargue el proyecto PLCnext Engineer al PLC.
- En la página de gestión basada en web del PLC, navegue a la ventana Autenticación de Certificados en la sección Seguridad. Se ha creado una nueva Tienda de Identidad llamada OPC UA-configurable.
- Cargue el certificado y la clave desde el archivo creado en el Paso 2, a la nueva Tienda de Identidad:
- Cargue el certificado haciendo clic en el botón "Establecer" y seleccionando el archivo de certificado/clave. Aparecerá un error, indicando que el Par de Claves existente y el nuevo Certificado no coinciden.
- Cargue la clave privada haciendo clic en el botón "Establecer" y seleccionando el archivo de certificado/clave. El error desaparecerá.
- Reinicie el PLCnext Runtime, para que el servidor OPC UA tome el nuevo certificado.
Ahora es posible conectar un cliente al servidor OPC UA usando este certificado autofirmado creado manualmente. Al conectar usando UA Expert, se pueden ver los detalles del certificado personalizado.
Opción 3 - Certificado firmado por su propia Autoridad de Certificación.
En XCA, es posible crear su propia Autoridad de Certificación (CA), y luego firmar sus certificados usando esta CA. Los pasos adicionales requeridos se describen en el documento "Creación de certificados X.509", referenciado al inicio de este artículo. Tenga en cuenta que, al exportar el archivo .pem, el formato de exportación debe ser "PEM chain (*.pem)".
Como en la Opción 2 anterior, este certificado debe cargarse en la tienda de identidad OPC UA-configurable.
Opción 4 - Certificado emitido por una Autoridad de Certificación de confianza
En este caso, el certificado se compra de, y es firmado por, una Autoridad de Certificación de confianza. De nuevo, este certificado debe cargarse en la tienda de identidad OPC UA-configurable. Si la CA es conocida por el cliente OPC UA, entonces no debería haber advertencias o errores al conectarse al servidor OPC UA.
Gestión de certificados en un servidor central
En lugar de cargar manualmente certificados de seguridad en el PLC, los certificados pueden en su lugar "empujarse" al PLC desde un Servidor de Descubrimiento Global OPC UA. Esto ayuda cuando se gestionan certificados de seguridad en una red que contiene múltiples servidores OPC UA.
Este tema se abordará en otro post.
Tecnología Industrial
- Domina Modbus en Arduino: Guía Paso a Paso
- Eleve sus Operaciones de Fabricación con ISO 9004: Una Guía Comprobada de Gestión de Calidad
- Construya una tabla de conexiones completa en E3.series 2021 – Guía completa
- Domine el diseño eléctrico: Optimice proyectos con funciones de E3.schematic
- Detectando Eslabones Débiles en tu Proceso de Diseño Eléctrico: Guía Práctica
- Calcula con Precisión el Coste de Empleados con Gastos Generales: Guía Completa
- Involucre a socios eficazmente sobre riesgos de seguridad en la cadena de suministro
- Aprovecha Edge AI para optimizar operaciones en almacenes y manufactura
- Superar a la Competencia con Instrucciones de Trabajo Digitales
- Integrar Alibaba Cloud Connector con PLCnext: Guía paso a paso
- Encender su PC remotamente con PLCnext vía Wake-on-LAN