Generazione del CSR per Tomcat

Una nota importante prima di iniziare: Il problema di gran lunga più comune che gli utenti hanno quando effettuano questo processo è collegato alle chiavi private. Se perdete o non riuscite ad accedere ad una chiave privata, non potete usare il certificato che vi emettiamo e sarà necessario richiedere una riemissione. Per assicurare che questo non accada, consigliamo di effettuare un backup del file della chiave privata e prendere nota della password usata per proteggere l'esportazione della chiave privata.


L'utility "keytool" che usate per generare la chiave privata (keyEntry) e il CSR è contenuta in Sun JDK toolkit. Se non avete JDK installato scaricate l'ultima versione stabile dal seguente link:


http://java.sun.com/J2SE/downloads.html


La seguente sequenza di comandi genererà un Keystore e un KeyEntry. Tomcat al momento supporta i formati JKS e PKCS#12 delle keystore. Il formato JKS è un formato standard Java, ovvero "Java Keystore", e il formato è generato con l'utility command-line keytool che è compresa nel kit JDK. Il formato PKCS#12 è un formato generale che può essere convertito usando il toolkit Openssl. Le seguenti istruzioni sono da usare solo con il keytool.


1. Generare un Keystore e un KeyEntry


Digitate il seguente comando dal prompt:


keytool -genkey -keysize 2048 -keyalg RSA -alias [keyEntry_name]-keystore [keystore_name]


Nota: Se non specificate un nome keystore (-keystore omesso dal comando), il keystore sarà salvato nel vostra directory locale come un file .keystore (i.e C:\Documents and Settings\your name\.keystore)


Quando eseguite questo comando vi sarà richiesto per una password keystore. La password di default usata da Tomcat è "changeit" anche se potete specificare una password a vostra scelta.


Il termine "First and last name" è la dicitura X.509 che distingue meglio il certificato, e che lo lega alla vostra Organizzazione. Inserire il vostro esatto nome host e del dominio che desiderate rendere sicuro. Esempio: se desiderate rendere sicuro www.miodominio.com, dovrete inserire l'esatto nome host (www) e il nome del dominio (miodominio.com) in questo campo. Se inserite miodominio.com allora il certificato emesso funzionerà correttamente solo su https://miodominio.com, causando un errore quando voi o i vostri utenti accederete al dominio tramite https://www.miodominio.com.


Inserite il vostro paese, provincia e città. Dovrete inserire il nome della società nello stesso modo in cui appare nei vostri documenti ufficiali di iscrizione della società. L'unità organizzativa è opzionale; Thawte verificherà ed autenticherà il nome della compagnia e non l'unità organizzativa. Per saltare il campo dell'unità organizzativa (OU) premere Invio sulla vostra tastiera.


Alla fine, vi verrà richiesta la password del keyEntry, che è la password che protegge la chiave privata. Per favore specificate la stessa password per il keystore e il keyentry o altrimenti riceverete il seguente messaggio di errore quando riavvierete Tomcat: java.security.UnrecoverableKeyException: Cannot recover key


2. Generare il CSR


Per favore digitate il seguente comando al prompt:

keytool -certreq -alias [keyEntry name] -keyalg RSA -file request.csr -keystore [keystore name]


Il CSR sarà salvato sulla vostra directory JDK/bin. Ora avete creato una coppia di chiavi pubblica/privata. La chiave Privata (keyEntry) è contenuta dentro il keystore nella directory JDK/bin ed è usata come descrizione. La parte pubblica è mandata a Thawte sotto forma di Certificate Signing Request (request.csr), e sarà usata dai vostri utenti per criptare i dati inviati al vostro sito.


3. Backup della vostra chiave privata

Per favore eseguire il backup del vostro file keystore e prendere nota della password. Vi consigliamo di fare una copia del backup su un disco removibile.