Glosario de Automatización • Certificado de instancia de aplicación

¿Qué es un certificado de instancia de aplicación y la lista de confianza de OPC UA?

Ingeniería Merobix • • 8 min de lectura

OPC UA no solo cifra el tráfico; verifica quién está en cada extremo de una conexión. Cada cliente y cada servidor porta un certificado de instancia de aplicación que lo identifica, y una conexión solo se permite cuando a cada lado se le ha dicho que confíe en el certificado del otro. Esta guía explica cómo funciona esa autenticación mutua, el algo incómodo baile de rechazo del primer intento que hace tropezar a casi todo el que llega nuevo a OPC UA, la diferencia entre certificados autofirmados y emitidos por una CA, el papel de la carpeta de certificados rechazados, y la trampa de expiración que puede romper en silencio un enlace que corrió confiable por años.

Volver al glosario

Certificado de instancia de aplicación en una línea: Un certificado de instancia de aplicación de OPC UA es un certificado digital que identifica de forma única a una aplicación cliente o servidor específica. OPC UA los usa para autenticación mutua: una conexión tiene éxito solo cuando cada lado ha colocado el certificado del otro en su lista de confianza. En una primera conexión, cada lado típicamente rechaza el certificado desconocido y lo archiva en una carpeta de certificados rechazados; un administrador lo mueve entonces a la lista de confiables, y después de eso los dos pueden conectarse.

Autenticación mutua con dos certificados

En OPC UA, ambos extremos de una conexión prueban su identidad, no solo el servidor. Cada aplicación - cliente y servidor por igual - sostiene su propio certificado de instancia de aplicación, un certificado que identifica a esa instancia de aplicación particular y no a una persona o una máquina en general. Al establecer un canal seguro, intercambian certificados, y cada lado revisa si de verdad confía en el certificado que el otro presentó. Solo si ambas revisiones pasan se forma el canal. Esto es autenticación mutua: el cliente verifica al servidor, y el servidor simultáneamente verifica al cliente.

La confianza la decide una lista de confianza. Cada aplicación mantiene un conjunto de certificados que está dispuesta a aceptar, y un certificado presentado se honra solo si aparece en ese conjunto confiable, ya sea directamente o mediante una autoridad certificadora confiable que lo emitió. Si el certificado presentado no está en la lista de confianza y no fue emitido por una autoridad confiable, el lado receptor rechaza la conexión de plano, sin importar si la criptografía en sí es sólida. El certificado puede ser perfectamente válido y el cifrado perfectamente fuerte, y la conexión igual fallará puramente porque la confianza no se ha establecido.

Este es un modelo más fuerte que la autenticación unilateral común en la web pública, donde un navegador revisa el certificado de un sitio pero el sitio no revisa el del navegador. En un entorno industrial, donde un cliente emite comandos que mueven equipos, importa tanto que el servidor pueda confirmar que el cliente está autorizado como que el cliente pueda confirmar que habla con el servidor correcto. Exigir que ambos certificados sean mutuamente confiados es como OPC UA impone esa garantía en dos sentidos.

El baile de rechazo del primer intento y la carpeta de rechazados

El comportamiento que sorprende a casi todos la primera vez es que un cliente y un servidor recién estrenados se negarán a conectarse entre sí, aun cuando todo esté configurado correctamente. Eso es por diseño. En el primerísimo intento, ninguno de los lados tiene el certificado del otro en su lista de confianza, así que cada lado hace exactamente lo que debe: rechaza el certificado desconocido. La conexión falla, pero no porque algo esté roto - falla porque la confianza aún no se ha establecido, que es precisamente el default seguro.

Lo que hace esto recuperable es la carpeta de certificados rechazados. Cuando una aplicación rechaza un certificado desconocido, no lo descarta sin más; guarda una copia en una carpeta designada de rechazados. Un administrador que está montando el enlace va a esa carpeta, inspecciona el certificado rechazado, confirma que pertenece a la aplicación que debe confiarse, y lo mueve a la lista de confiables. Una vez que ambos lados han hecho esto - cada uno habiendo movido el certificado del otro de rechazados a confiables - el siguiente intento de conexión tiene éxito. Este paso de mover de rechazados a confiables es el ritual estándar de puesta en marcha de OPC UA, y saber que existe convierte una primera falla de conexión confusa en una tarea rutinaria de dos minutos.

La elección entre certificados autofirmados y emitidos por una CA cambia cuánto de esto se hace a mano. Un certificado de instancia de aplicación autofirmado lo genera la propia aplicación y se confía individualmente, lo que es simple para un puñado de conexiones pero significa que cada pareja debe aprobarse una por una. Los certificados emitidos por una autoridad certificadora compartida permiten a las aplicaciones confiar en la autoridad una sola vez, de modo que cualquier certificado que esa autoridad firme se acepta sin una aprobación manual por conexión. A mayor escala, un Global Discovery Server puede automatizar la emisión y distribución de estos certificados entre muchas aplicaciones, que es como los despliegues grandes evitan ahogarse en decisiones manuales de confianza.

Trampas de expiración y gestión de certificados a escala de campo

Los certificados expiran, y esa es la trampa que atrapa a los enlaces OPC UA de larga vida. Un certificado de instancia de aplicación tiene un periodo de validez, y cuando pasa su fecha de expiración el otro lado empezará a rechazarlo - de la misma forma en que rechazaría cualquier certificado no confiable. El modo de falla es especialmente feo porque golpea una conexión que funcionó impecable por mucho tiempo: nada en la configuración cambió, nadie tocó la red, y aun así un día el enlace deja de formarse porque un certificado alcanzó en silencio su fecha de expiración. Los equipos que no rastrean vidas de certificados pueden pasar mucho tiempo cazando una causa que resulta ser una fecha de calendario venciendo.

Evitar esto significa tratar el ciclo de vida de los certificados como algo que se monitorea, no que se configura y se olvida. Los certificados deben renovarse y volver a confiarse antes de expirar, y en un despliegue con muchas aplicaciones eso es una tarea administrativa real. Hacerlo de forma reactiva - esperar a que un enlace se rompa y entonces descubrir la expiración - es como ocurren los paros; hacerlo de forma proactiva, con visibilidad de cuándo vence cada certificado, es como se evitan. Este es exactamente el tipo de detalle silencioso de infraestructura que determina si una integración OPC UA se mantiene sana por años o falla de forma confusa en un momento inconveniente.

Para una plataforma SCADA en la nube como Merobix conectándose como cliente OPC UA a servidores en muchos sitios, la confianza y la expiración de certificados son parte del cuadro operativo y no un paso único de configuración. La plataforma sostiene su propio certificado de instancia de aplicación, establece confianza mutua con cada servidor al que se conecta, y se beneficia de rastrear la validez de los certificados para que una expiración cercana aflore como algo sobre lo que actuar antes de que tire un enlace en silencio. Bien manejado, el modelo de certificados da autenticación fuerte, bidireccional y por aplicación; manejado con descuido, el mismo modelo convierte una fecha de expiración en un paro inexplicable - y por eso entender las listas de confianza, la carpeta de rechazados y la expiración es tan importante como entender el cifrado mismo.

Preguntas frecuentes

¿Por qué un cliente y un servidor OPC UA nuevos se niegan a conectarse al principio?

Porque ninguno tiene todavía el certificado del otro en su lista de confianza, así que en el primer intento cada lado rechaza correctamente el certificado desconocido y lo guarda en una carpeta de certificados rechazados. Este es el default seguro previsto, no una falla. Un administrador mueve cada certificado de la carpeta de rechazados a la lista de confiables en ambos lados, y después de eso la conexión tiene éxito.

¿Cuál es la diferencia entre certificados OPC UA autofirmados y emitidos por CA?

Un certificado de instancia de aplicación autofirmado se genera y se confía individualmente, lo que es simple pero exige aprobar a mano cada pareja cliente-servidor. Un certificado emitido por CA lo firma una autoridad certificadora, así que las aplicaciones pueden confiar en esa autoridad una sola vez y aceptar automáticamente cualquier certificado que firme. El autofirmado conviene para pocas conexiones; los certificados de CA, a menudo gestionados por un Global Discovery Server, escalan mucho mejor entre muchas aplicaciones.

¿Por qué una conexión OPC UA se rompe de repente tras años funcionando?

Una causa común es la expiración de certificado. Los certificados de instancia de aplicación tienen un periodo de validez, y una vez que uno expira el otro lado lo rechaza igual que a cualquier certificado no confiable, aunque nada más haya cambiado. Como la falla aparece de la nada en un enlace previamente confiable, es fácil diagnosticarla mal. Rastrear las vidas de los certificados y renovar antes de la expiración previene esta clase de paro silencioso.

Más en Protocolos industriales
Corregir errores de confianza de certificado OPC UA  •  Capa de aplicación DNP3  •  Anfitrion primario de Sparkplug  •  Confirmacion de aplicacion DNP3  •  Corregir bucles de timeout de sesion OPC UA  •  Todo en Protocolos industriales →
Capacitación SCADA gratuita para operadores
Merobix University - 70 lecciones en video y 261 preguntas de examen, del primer inicio de sesión a los reportes de cumplimiento (contenido en inglés). Sin llamada de ventas.
Comenzar gratis →