Skip to main content

Connessione con autenticazione a chiave pubblica

SSH consente una connessione al controller sicura, crittografata e autenticata. Ciò consente di eseguire la gestione remota del controller in un ambiente sicuro.

L'autenticazione può essere eseguita fornendo i dati di accesso (nome utente e password). Puoi anche scegliere un metodo più potente usando l'autenticazione basata su chiave (autenticazione con chiave pubblica). L'utente utilizza una chiave per accedere al controller. Una chiave è composta da una chiave pubblica e una privata. Questo tipo di coppia di chiavi è molto più difficile da compromettere rispetto a una password.

L'operazione di registrazione verifica se la chiave pubblica del controller corrisponde alla chiave privata del sistema di sviluppo. In questo caso, l'accesso viene concesso senza l'utilizzo di una password.

Crei le chiavi SSH utilizzate in CODESYS sul sistema di sviluppo basato su Windows. È possibile opzionalmente specificare una passphrase in modo da aumentare ulteriormente la sicurezza dell'autenticazione con chiave pubblica. È possibile copiare la chiave pubblica su uno o anche più controller, il che potrebbe essere desiderabile, ad esempio, su una macchina composta da più controller. La chiave privata rimane sempre nel sistema di sviluppo e non deve mai essere condivisa in nessun caso.

Importante

Non condividere mai la chiave privata.

Creazione di una chiave SSH

Innanzitutto crea una chiave SSH in Windows composta da una chiave privata e una pubblica.

  1. Installa lo strumento open source "PuTTY".

    Diverse applicazioni si trovano in C:\Program Files (x86)\PuTTY.

  2. Apri lo strumento "PuTTYgen".

    Si apre la seguente finestra di dialogo.

    _sl_img_puttygen_generator.png
  3. Seleziona il RSA opzione e fare clic su creare pulsante.

    Inizia la creazione della chiave.

  4. Nel frattempo, sposta il mouse nello spazio libero sotto la barra di avanzamento fino a creare la chiave.

    Si apre la seguente finestra di dialogo:

    _sl_img_puttygen_generated_key.png
  5. Se necessario, puoi designare una passphrase sicura e univoca in Passphrase chiave e Conferma passphrase.

    _sl_img_puttygen_passphrase.png

    Se hai assegnato una passphrase, anche le chiavi sono protette. Avrai bisogno della passphrase ogni volta che usi una chiave per accedere al tuo controller CODESYS. Mantieni segreta la passphrase in modo che solo le persone autorizzate la sappiano.

  6. Clicca il Salva chiave privata e specificare un nome file (esempio: serviceuser.ppk).

    _sl_img_puttygen_serviceuser.png
  7. Clic Salva.

    Viene creata la chiave PPK privata.

  8. Fai clic su ConversioniEsporta chiave OpenSSH comando.

  9. Specificare un nome file (esempio: serviceuser.openssh).

    Viene creata la chiave OPENSSH privata.

  10. Nel Chiave pubblica da incollare nel file Authorized_keys di OpenSSH campo di testo, ora seleziona l'intera stringa.

    _sl_img_public_key_generated.png
  11. Nel menu contestuale, fai clic Copia per copiare la stringa negli appunti e incollarla in un file di testo. Assegna un nome al file di testo (esempio serviceuser.pub).

    Viene creata la chiave PUB privata.

  12. Sposta le chiavi in una posizione adatta, forse anche nascosta, sul computer di sviluppo. Oppure salva i file su una chiavetta USB che rimane con il sistema di sviluppo.

    Ad esempio, le chiavi private e pubbliche si trovano ora nel file D:\PLCs\BeagleBone\Keys directory.

    Nota

    Assicurati che la chiave privata rimanga sempre nel sistema di sviluppo. La chiave privata non deve mai essere condivisa.

Copia della chiave pubblica nel controller

Copia la chiave pubblica (esempio: serviceuser.pub) al responsabile del trattamento. Prestare attenzione alle informazioni sul fornitore.

Collegamento di chiavi private in CODESYS

  1. Aperta CODESYS e fai clic su UtensiliImplementa Control SL comando.

  2. Sul Comunicazione scheda, espandi il Login basato su chiavi sezione.

  3. Fai clic su Aggiungi Keyfile pulsante.

    Si apre una finestra di dialogo per la selezione dei file.

  4. Selezionare la chiave privata desiderata (file OPENSH).

    Esempio: serviceuser.openssh

    _sl_img_options_runtime_deploy_toll.png
  5. Clic ok per confermare il dialogo.

    La finestra di dialogo si chiude. Ora CODESYS ha la chiave privata.

Suggerimento

Puoi anche collegare la chiave privata nelle opzioni, nel Strumento Runtime Deploy categoria.

Accesso basato su chiave con una chiave SSH

Accedi al controller con la chiave SSH.

  1. Fai clic su UtensiliImplementa Control SL comando.

    Il Strumento di distribuzione runtime si apre.

  2. Seleziona il Accesso SSH basato sulla chiave opzione.

    Una casella di riepilogo fornisce tutte le chiavi conosciute CODESYS.

  3. Selezionare la chiave desiderata serviceuser.openssh.

  4. Specificare il nome utente ed eventualmente la passphrase nei rispettivi campi di input.

  5. Clicca il Scansione pulsante.

    La rete viene scansionata alla ricerca di controller corrispondenti. Viene visualizzato il risultato della ricerca.

  6. Selezionare quello desiderato dall'elenco dei controller.

  7. Ad esempio, fare clic Informazioni di sistema.

    Il server SSH sul controller controlla se la chiave privata corrisponde o meno alla chiave pubblica. In questo caso, sei autenticato e connesso. Dopodiché, il comando viene eseguito e le informazioni di sistema del controller vengono visualizzate in CODESYS.