Come creare un certificato server da un certificato di letsencrypt.org?

1

Ho creato un certificato di letcrypt.org utilizzando letsencrypt run che funziona bene come certificato SSL su apache2 . Come posso creare un altro certificato server firmato (e quindi fidato) dal certificato di letsencrypt.org?

Ho provato a creare un CSR con

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

che presumo di poter firmare con

openssl x509 -extensions server_cert -req -in file.csr -CA /etc/letsencrypt/live/[domain name]/fullchain.pem -CAkey /etc/letsencrypt/live/[domain name]/privkey.pem -CAcreateserial -out file.pem -days 500 -sha256

Il risultato è SEC_ERROR_INADEQUATE_KEY_USAGE in firefox 47.0 su Ubuntu 16.04.

Presumo che il certificato risultante sia attendibile come il certificato di letsencrypt.org poiché la catena di fiducia non dovrebbe essere infranta. Il certificato da creare non è necessario. Voglio crearlo allo scopo di imparare nel caso in cui questa domanda non rivelasse che sto richiedendo qualcosa di impossibile.

    
posta Karl Richter 20.07.2016 - 19:59
fonte

1 risposta

5

Non è possibile utilizzare il certificato SSL acquistato da Let's Encrypt per firmare altri certificati. Per fare ciò, il certificato deve essere certificato CA. Ciò avviene impostando isCA=true nell'estensione certificato BasicConstraints . Inoltre, l'estensione KeyUsages dovrebbe includere un keyCertSign bit abilitato.

Il tuo certificato SSL non ha tale impostazione e nessuno ti darà tale.

Quello di cui hai bisogno è acquisire un altro certificato dal fornitore di CA (Let's Encrypt, per esempio).

Modifica: come nota a parte. È possibile acquistare il certificato CA dalle CA pubbliche, tuttavia è piuttosto costoso. I costi di servizio sono migliaia e migliaia di dollari. Inoltre, dovrai acquistare un Hardware Security Module (HSM) piuttosto costoso ($ 5k + per la scheda PCI e circa $ 30k + per HSM netto come Thales nCipher). E dovrai superare audit esterni per verificare la conformità alle policy. Questa procedura è denominata Firma dell'autorità di certificazione. Ho scritto un articolo sull'argomento: link

Sospetto che non sia questo il tuo caso, quindi, come suggerito da @ crovers, devi solo acquisire un altro certificato da Let's Encrypt come hai già fatto per il tuo dominio.

    
risposta data 20.07.2016 - 20:27
fonte

Leggi altre domande sui tag