How-to

Rinnovo certificati Digicert con generazione manuale CSR

Le versioni più recenti dei browser, per ragioni di sicurezza, non consentono più la generazione in line delle chiavi  necessarie per la creazione di un certificato digitale.

Dovendo applicare per un nuovo certificato, bisogna quindi creare manualmente la CSR (Certificate Sign Request) e la chiave privata.

La CSR firmata dal gestore dei certificati (Digicert in questo caso) viene poi unita alla chiave privata e forma il certificato che potete inserire nel browser o ovunque necessario per autenticarvi.

Generare una richiesta con CSR

Utenti Linux o Mac

Si può facilmente generare una CSR  aprendo il terminale ed eseguendo questo comando (sostituite Mario Rossi con il vostro nome e cognome):

openssl req -new -newkey rsa:2048 -nodes -out certificateReq.csr -keyout private.key -subj "/CN=Mario Rossi"

Questo comando genera i due file che servono rispettivamente per la sottomissione della richiesta e la creazione del certificato :

  • certificateReq.csr
  • private.key

Windows

Normalmente Windows non è fornito di un client OpenSSL, necessario per la creazione della CSR e della chiave. Se avete installato per qualche motivo una shell Linux (Windows 10 lo supporta) probabilmente c’è anche openssl, e potete eseguire i passaggi sopra indicati per Linux.

Se invece non avete una shell Linux, dovete installarvi il client OpenSSL. Potete scaricarlo e installarlo da questo link. Una volta scaricato e scompattato OpenSSL, entrate nella directory bin, e cliccate su openssl.exe . Dal prompt che si apre, eseguire questo comando (sostituite Mario Rossi con il vostro nome e cognome)

req -new -newkey rsa:2048 -nodes -out certificateReq.csr -keyout private.key -subj "/CN=Mario Rossi" -config openssl.cnf

a questo punto nella cartella bin sono stati generati due file aggiuntivi

  • certificateReq.csr
  • private.key

potete uscire dal prompt di OpenSSL chiudendo la finestra, oppure con Control+c

 Sottomissione richiesta

Andate con il browser (raccomandato Firefox) su https://digicert.com/sso, inserite INFN come Identity Provider, e cliccate su Start single sign-on per autenticarvi con INFN AAI.

Fatto questo passaggio, si apre un form di richiesta, scegliete “Premium” come Product (o “Grid Premium” avete questa esigenza), e inserite nel campo CSR il contenuto del file certificateReq.csr generato al passo precedente.  Il contenuto del file va copiato e incollato per intero, compreso il preambolo. Su Windows conviene aprirlo con WordPad.

Cliccare su Request Certificate e, se tutto va bene, la richiesta viene  firmata ed i file corrispondenti, in formato zip, vengono mandati per mail all’indirizzo principale che avete impostato su INFN AAI (lo stesso indirizzo è impostato come attributo del vostro certificato). Sotto My Certificates troverete una copia degli stessi file pronti per il download, utile nel caso non aveste accesso alla mailbox.

Esportazione del certificato

Rimane solo da combinare la chiave privata generata al passo 1 con la richiesta firmata da Digicert al passo 2, e si ottiene il vostro certificato nel formato p12, usabile per l’autenticazione con i programmi appositi. Andate nella cartella dove avete eseguito i comandi openssl, copiate il file NOME_COGNOME.crt contenuto nello zip ricevuto per mail, e, se siete su Linux o Mac eseguite

openssl pkcs12 -export -in NOME_COGNOME.crt -inkey private.key -out mioCertificato.p12

mentre su Windows andate al prompt OpenSSL ed eseguite

pkcs12 -export -in NOME_COGNOME.crt -inkey private.key -out mioCertificato.p12

vi viene chiesta una password da impostare: è la password che userete per importare il certificato in qualche programma (per esempio sul browser o sul vostro client di posta).

Rimarrebbe da cancellare per sicurezza la chiave privata, ma c’è  una buona ragione per non farlo, almeno in questo momento di transizione. Se doveste dimenticare la password del certicato, oppure perdere il certificato .p12, vi basta eseguire nuovamente l’esportazione del certificato per ricostruirlo. 

Come vedete, insieme alla CSR firmata che avete ricevuto per mail, la private key consente  di ricreare il certificato. Quindi se non volete cancellarla assicuratevi che sia conservata opportunamente (no cloud storage, storage condiviso, chiavi usb etc etc..), prevenendo che finisca nelle mani sbagliate e permetta a qualcun altro di autenticarsi al posto vostro.

Related Articles