Solicitud y suministro de certificados firmados por una autoridad certificadora a través del PLC Shell
Actualmente, solo es posible crear una CSR para un certificado de PLC a través de la carcasa del PLC del editor de dispositivos.
Importante
Al crear un CSR
(Certificate Signing Request
), el PLC agrega todas las extensiones X509 necesarias a la solicitud de firma del certificado. Como resultado, una autoridad de certificación (CA) puede agregar algunas extensiones, pero no puede omitir las extensiones existentes. Si las extensiones de la CSR no existen en el certificado firmado, el PLC no podrá utilizarla
Tenga en cuenta que el certificado firmado por una autoridad certificadora ha aplicado las siguientes entradas de la CSR: Key Usage
, Extended Key Usage
, Subject Alternative Name
, cada uno con Critical
Bandera. Se deben incluir las siguientes extensiones en la CSR: Key Usage
, Extended Key Usage
, Subject Alternative Name
, cada uno con Critical
bandera.
En primer lugar, se genera una solicitud de certificado para todos los certificados o componentes necesarios (
CSR
=Certificate Signing Request
). También pueden convertirse en certificados de cliente (por ejemplo, para el cliente OPC UA). Para ello, haga clic en PLC Shell pestaña del controlador. En la línea de entrada, escriba elcert-createcsr
comando.Syntax:
cert-createcsr [<number retrieved by \"cert-getapplist\">] [encoding=Base64 | ASN.1]
<number retrieved by \"cert-getapplist\">
Opcional: especifique el número de un solo componente de la salida de
cert -getapplist
. Si no se especifica, se generan certificados para todos los componentes generados.encoding=Base64 | ASN.1
Opcional: especifique el formato de exportación (configuración predeterminada:
ASN.1
).ANS.1
: formato de archivo binario para certificados, CSR y claves asimétricas.Base64
: Representación textual de los datos ASN.1, basada en la codificación Base64.Nota
Las CA pueden especificar el formato de archivo. Luego, el CSR se genera automáticamente en el formato correcto.
De lo contrario, también es posible la conversión sin pérdidas de un formato a otro. Por ejemplo, OpenSSL se puede usar para hacer esto:
openssl req -in <file name> -inform <DER|PEM> -out <file name_new> -outform <PEM|DER>
DER
corresponde a ASN.1PEM
corresponde a Base64Haga clic en Registrar pestaña y, a continuación, haga clic en
botón de actualización.
En las entradas de registro, puede ver que se generaron los archivos CSR.
Haga clic en Archivos pestaña y abre la ruta del archivo
cert/export
en el lado derecho del Tiempo de ejecución diálogo.El
export
la carpeta contiene los archivos CSR generados.Ejemplo:
0_CmpsecureChannl.csr, 1_CmpApp.csr, 2_CmpWebServer.csr
Seleccione una ruta de archivo en la que desee insertar los archivos CSR en el lado izquierdo del Anfitrión cuadro de diálogo, marque los archivos CSR en la parte derecha del cuadro de diálogo y haga clic
.
Los archivos CSR se copian en la carpeta requerida.
Estas solicitudes de certificado las puede firmar una autoridad de certificación (CA). Como resultado, recibirá un certificado firmado por la autoridad de certificación.
En los pasos siguientes, importará estos certificados firmados a su controlador.
Nota
Tras reiniciar el controlador, los certificados firmados por la autoridad certificadora se utilizan automáticamente.
Sugerencia
Como alternativa, puede utilizar el 0_Global: Produkt Security Agent utilícelo para transferir los certificados al controlador. Para obtener más información, consulte: CODESYS Security Agent
Seleccione el Ruta
cert/import
en el lado derecho del Tiempo de ejecución diálogo.En el lado izquierdo del Anfitrión cuadro de diálogo, seleccione la ruta del sistema de archivos en la que guardó los certificados firmados y seleccionó los certificados.
Haga clic
.
Los certificados se copian en el
cert/import
carpeta.Haga clic en Concha de PLC pestaña.
Type the
cert-import own <file name of the certificate.cer>
command in the input line of the tab and press the Enter key.The signed certificates are available to the runtime servers.
Nota
En el archivo de configuración del controlador (por ejemplo, CODESYSControl.cfg
), el nombre de la organización se puede configurar en el certificado de un servidor OPC UA con la siguiente entrada:
[CmpOPCUAServer]
SECURITY.CompanyOrOrganizationName="<organization name>"
Si el CODESYS Security Agent está instalado, entonces también es posible editar el Configuración de comunicación en la pestaña de configuración de comunicación del editor del dispositivo.