Richiesta e fornitura di certificati firmati dall'autorità di certificazione tramite PLC Shell
Attualmente è possibile creare un CSR per un certificato PLC solo tramite la shell PLC dell'editor dei dispositivi.
Importante
Quando si crea un CSR
(Certificate Signing Request
), il PLC aggiunge tutte le estensioni X509 richieste alla richiesta di firma del certificato. Di conseguenza, un'autorità di certificazione (CA) può aggiungere alcune estensioni, ma non può omettere le estensioni esistenti. Se le estensioni del CSR non sono presenti nel certificato firmato, non possono essere utilizzate dal PLC
Tieni presente che il certificato firmato dall'autorità di certificazione ha applicato le seguenti voci del CSR: Key Usage
, Extended Key Usage
, Subject Alternative Name
, ognuno con il Critical
flag.Le seguenti estensioni devono essere incluse nel CSR: Key Usage
, Extended Key Usage
, Subject Alternative Name
, ognuno con il Critical
bandiera.
Innanzitutto, si genera una richiesta di certificato per tutti i certificati o i componenti richiesti (
CSR
=Certificate Signing Request
). Questi possono anche diventare certificati client (ad esempio, per il client OPC UA). A tale scopo, fai clic su PLC Shell scheda del controller. Nella riga di immissione, digitarecert-createcsr
comando.Syntax:
cert-createcsr [<number retrieved by \"cert-getapplist\">] [encoding=Base64 | ASN.1]
<number retrieved by \"cert-getapplist\">
Facoltativo: specificare il numero di un singolo componente dall'output di
cert -getapplist
. Se non specificato, i certificati vengono generati per tutti i componenti generati.encoding=Base64 | ASN.1
Opzionale: specificazione del formato di esportazione, impostazione standard:
ASN.1
.ANS.1
: Formato file binario per certificati, CRS e chiavi asimmetriche.Base64
: Rappresentazione testuale dei dati ASN.1, basata sulla codifica Base64.Nota
Il formato del file può essere specificato dalle CA. Quindi la CSR viene generata automaticamente nel formato corretto.
In caso contrario, è possibile anche la conversione senza perdita di dati da un formato all'altro. Ad esempio usando OpenSSL:
openssl req -in <file name> -inform <DER|PEM> -out <file name_new> -outform <PEM|DER>
DER
corrisponde all'ASN.1PEM
corrisponde a Base64Fai clic su Registra scheda e quindi fare clic su
pulsante di aggiornamento.
Nelle voci del registro, puoi vedere che i file CSR sono stati generati.
Fai clic su File scheda e apri il percorso del file
cert/export
nella parte destra del Runtime dialogo.Le
export
la cartella contiene i file CSR generati.Esempio:
0_CmpsecureChannl.csr, 1_CmpApp.csr, 2_CmpWebServer.csr
Seleziona un percorso di file in cui desideri inserire i file CSR nella parte sinistra del Host finestra di dialogo, contrassegna i file CSR nella parte destra della finestra di dialogo e fai clic
.
I file CSR vengono copiati nella cartella richiesta.
Queste richieste di certificato possono essere firmate da un'autorità di certificazione (CA). Di conseguenza, si ottiene un certificato firmato dall'autorità di certificazione.
Nei passaggi seguenti, importi questi certificati firmati nel controller.
Nota
Dopo aver riavviato il controller, i certificati firmati dalla CA vengono utilizzati automaticamente.
Suggerimento
In alternativa, puoi anche usare il 0_Global: Produkt Security Agent per trasferire i certificati al controller. Per ulteriori informazioni, consulta: CODESYS Security Agent
Seleziona il Percorso
cert/import
nella parte destra del Runtime dialogo.Nella parte sinistra del Ospite finestra di dialogo, seleziona il percorso nel file system in cui hai salvato i certificati firmati e selezionato i certificati.
Clicca
.
I certificati vengono copiati nel
cert/import
cartella.Fai clic su PLC Shell scheda.
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
Nel file di configurazione del controller (ad esempio, CODESYSControl.cfg
), il nome dell'organizzazione può essere impostato nel certificato per un server OPC UA con la seguente voce:
[CmpOPCUAServer]
SECURITY.CompanyOrOrganizationName="<organization name>"
Se il CODESYS Security Agent è installato, allora è anche possibile modificare Impostazioni di comunicazione nella scheda delle impostazioni di comunicazione dell'editor del dispositivo.