Potrei cancellare i file .csr una volta che la chiave è stata firmata da CA.

6

Sto creando il mio server openvpn .

L' Autorità di certificazione si trova su un host separato.

Esistono due tipi di client: che inviano solo un .csr e a cui invio il .crt come risposta e l'altro che costruisco da solo.

Nel secondo caso, creo .key e .csr usando:

openssl req -days 3652 -nodes -new -keyout NewClient007.key -out NewClient007.csr

rispetto al certificato firmato da:

openssl ca -days 3652 -out NewClient007.crt -in NewClient007.csr

Quindi, da lì, installerò sia .key che .crt nel nuovo client ed eliminerò .key dalla CA .

Se capisco correttamente, .crt può essere utile se voglio revocare la chiave, in futuro (ma viene copiata in Id.pem , dove Id è il numero di indice).

Stato corrente, dove si trovano i file ssl:

server:
   ca.crt           CA's public certificate
   server.crt       server public certificate
   server.key       server private key
   crl.pem          CA signed certificates revocation list
   dh1024.pem       Diffie-Hellman parameters file

certificate authority:
   ca.key           CA's private key
   ca.crt           CA's public certificate
   index.txt        Index of signed keys
   serial           number of next entry in index.txt
   index.txt.attr   attributes for index file
   ClientXXXX.crt   All clients certificates
   ClientXXXX.csr   All clients signing requests
   YY.pem           Copy of clients certificates according to index nr.

clients:
   ca.crt           CA's public certificate
   ClientXXXX.crt   The client certificate
   ClientXXXX.key   The client key

Quando costruisco io stesso la chiave del client, sono immediatamente shred e cancellati una volta installati nel client.

Quindi penso (ma non sono sicuro) che potrei cancellare tranquillamente tutto ClientXXXX.csr e ClientXXXX.crt da CA ... ... Quindi c'è la mia domanda:

potrei mai aver bisogno di accedere nuovamente al file .csr o potrei eliminarli definitivamente?

    
posta F. Hauri 19.03.2013 - 17:01
fonte

3 risposte

11

La Certificate Signing Request (CSR) non è di alcuna utilità una volta ottenuto il certificato. È solo uno dei veicoli che può essere utilizzato per fornire alla CA la tua chiave pubblica come parte del processo di richiesta, in modo che possano emettere un certificato.

Ora sarai in grado di ottenere nuovamente la chiave pubblica dal certificato stesso.

In effetti, in questo particolare formato, sarai in grado di ottenere la chiave pubblica dal file .key :

openssl rsa -in NewClient007.key -pubout

In effetti, sarai anche in grado di rigenerare la CSR usando questo:

openssl req -new -key NewClient007.key -out NewClient007.csr

(Si noti che non è necessaria l'opzione -days 3652 quando si genera la CSR, dal momento che un CSR non ha date non precedenti / non successive, diversamente dai certificati X.509. Questo è utile solo se si desidera per generare un certificato durante questo passaggio.)

Tuttavia, suggerisco di utilizzare -newkey rsa:2048 o -newkey rsa:4096 invece di fare affidamento sulla dimensione della chiave predefinita, che è spesso 1024 bit.

    
risposta data 19.03.2013 - 17:12
fonte
5

Sì, una volta che il certificato è stato firmato non hai più bisogno della richiesta di firma.

    
risposta data 19.03.2013 - 17:07
fonte
3

Normalmente, fai le cose in questo ordine:

  1. Sul tuo server openvpn, crei la coppia di chiavi e la richiesta di certificato, con openssl req .
  2. Si trasporta la richiesta di certificato (il file ".csr") alla CA.
  3. La CA rilascia il certificato (nel tuo caso, con openssl ca ), producendo il file ".crt".
  4. Il certificato viene trasferito sul server openvpn.

La richiesta di certificato contiene solo la chiave pubblica , non quella privata. Può viaggiare senza alcuna protezione contro gli intercettatori, perché non contiene nulla di confidenziale. Devi comunque assicurarti che ciò che la CA ottiene sia effettivamente la richiesta inviata dal cliente, nel caso in cui la trasmissione possa essere modificata.

Una volta che il certificato è stato emesso, la richiesta di certificato può essere cancellata perché non ha più alcun uso. Ma puoi tenerlo come una guida per le richieste successive (ad esempio, quella che farai tra dieci anni); poiché non c'è nulla di confidenziale in quella richiesta, non è necessario proteggere il suo archivio. Allo stesso modo, mentre la CA non ha bisogno di conservare una copia del certificato stesso, è considerata una buona pratica farlo comunque. La maggior parte del software CA lo fa automaticamente (utilizzando lo strumento da riga di comando di OpenSSL, si sceglie il "percorso difficile").

È meglio che la chiave privata sia generata sul server openvpn stesso e non lasci mai quel server, come spiegato sopra. Generare la chiave sulla macchina CA e quindi trasportarla sul server openvpn solleva alcuni problemi: come ci si assicura che la chiave non sia spiata durante quel trasferimento? Come ci si assicura che nessuna copia di quella chiave rimanga sul disco fisso della CA?

    
risposta data 19.03.2013 - 17:32
fonte

Leggi altre domande sui tag