Firma il certificato SSL con certificato radice usando openssl

0

Ho creato un certificato di origine, My Root Certificate , con una chiave privata, RSA Private Key 1 , utilizzando il comando di terminale openssl.
Vorrei creare una catena di certificati come la seguente:

  • Il mio certificato root
  • example.com, firmato con RSA Private Key 1

Come posso creare questa catena di certificati con il comando del terminale openssl?

    
posta Java Is Cool 20.11.2014 - 05:02
fonte

2 risposte

0

Questo mi ha aiutato: link . Domanda molto bella, ma la risposta è ciò che contava.

    
risposta data 22.11.2014 - 05:42
fonte
3
  1. Innanzitutto, crea le directory per conservare il certificato CA ei file correlati: sudo mkdir / etc / ssl / CA sudo mkdir / etc / ssl / newcerts

  2. La CA necessita di alcuni file aggiuntivi per funzionare, uno per tenere traccia dell'ultimo numero seriale utilizzato dalla CA, ogni certificato deve avere un numero seriale univoco e un altro file per registrare quali certificati sono stati emessi: sudo sh -c "echo '01' > / etc / ssl / CA / serial" sudo touch /etc/ssl/CA/index.txt

  3. Il terzo file è un file di configurazione della CA. Sebbene non strettamente necessario, è molto conveniente quando si emettono più certificati. Modifica /etc/ssl/openssl.cnf e nella modifica [CA_default]: dir = / etc / ssl / # Dove tutto è tenuto database = $ dir / CA / index.txt # file di indice del database. certificato = $ dir / certs / cacert.pem # Il certificato CA. serial = $ dir / CA / serial # Il numero di serie corrente private_key = $ dir / private / cakey.pem # La chiave privata

  4. Successivamente, crea il certificato radice auto-cantato: openssl req -new -x509 -extensions v3_ca -keyout cakey.pem -out cacert.pem -days 3650 Ti verrà chiesto di inserire i dettagli sul certificato.

  5. Ora installa il certificato e la chiave di root: sudo mv cakey.pem / etc / ssl / private / sudo mv cacert.pem / etc / ssl / certs /

  6. Ora sei pronto per iniziare a firmare i certificati. Il primo elemento necessario è una richiesta di firma del certificato (CSR), vedere Generazione di una richiesta di firma del certificato (CSR) per i dettagli. Una volta ottenuto un CSR, immettere quanto segue per generare un certificato firmato dalla CA: sudo openssl ca -in server.csr -config /etc/ssl/openssl.cnf Dopo aver inserito la password per la chiave CA, ti verrà richiesto di firmare il certificato e di nuovo di impegnare il nuovo certificato. Dovresti quindi vedere una quantità piuttosto grande di output correlato alla creazione del certificato.

  7. Ora dovrebbe esserci un nuovo file, /etc/ssl/newcerts/01.pem, che contiene lo stesso output. Copia e incolla tutto iniziando con la riga: ----- INIZIA IL CERTIFICATO ----- e proseguendo lungo la linea: ---- END CERTIFICATE ----- si dirige verso un file chiamato dopo il nome host del server dove il certificato verrà installato. Ad esempio mail.example.com.crt, è un bel nome descrittivo. I certificati successivi saranno denominati 02.pem, 03.pem, ecc. Sostituisci mail.example.com.crt con il tuo nome descrittivo.
  8. Infine, copia il nuovo certificato sull'host che ne ha bisogno e configura le applicazioni appropriate per usarlo. Il percorso predefinito per installare i certificati è / etc / ssl / certs. Ciò consente a più servizi di utilizzare lo stesso certificato senza autorizzazioni di file eccessivamente complicate. Per le applicazioni che possono essere configurate per utilizzare un certificato CA, è necessario copiare anche il file /etc/ssl/certs/cacert.pem nella directory / etc / ssl / certs / su ciascun server.
risposta data 20.11.2014 - 08:58
fonte

Leggi altre domande sui tag