2011-01-27 17 views

risposta

19

Il file di certificato SSL contiene il certificato X.509 (che, a sua volta, contiene una chiave pubblica utilizzata per la cifratura). Il certificato SSL Chiave Il file contiene la chiave privata corrispondente alla chiave pubblica nel certificato. Affinché il server Web crittografi il traffico e decrittografare il traffico, deve contenere sia la chiave pubblica (certificato) che la chiave privata corrispondente. Apache, a differenza di molti altri prodotti server, memorizza la chiave e il certificato in file separati. I prodotti basati su Java, ad esempio, in genere utilizzano i file di KeyStore Java, che sono un database crittografato contenente sia il certificato che la chiave privata.

0

Per una panoramica della crittografia a chiave pubblica, compreso l'uso di chiavi private:

http://en.wikipedia.org/wiki/Public-key_cryptography#How_it_works

E una ripartizione dettagliata di tutti i passaggi utilizzati nella TLS, il protocollo il server utilizza per il traffico HTTPS, che mostra esattamente dove la chiave privata viene utilizzata:

http://en.wikipedia.org/wiki/Transport_Layer_Security

+0

Come un breve riassunto come: "Nella crittografia a chiave pubblica, la chiave privata è utilizzata per ..."? – Gumbo

+0

Ha solo bisogno di leggere 3 frasi nel primo link per ottenere quel riassunto. Se puoi rispondere alla tua domanda con una rapida lettura di un articolo della wiki, è una domanda davvero scarsa da fare qui agli altri esseri umani. –

+0

Forse chiede la ragione tecnica (e forse non concettuale), che è specifica per Apache. Ho cercato di rispondere a questo apache modo. – saxos

14

Di solito ci sono tre direttive inclusi:

SSLCertificateFile /opt/csw/apache2/certs/icompany/publicCert.pem 
SSLCertificateChainFile /opt/csw/apache2/certs/icompany/chain.pem 
SSLCertificateKeyFile /opt/csw/apache2/certs/icompany/PrivateKeyCert.pem 

SSLCertificateFile deve contenere solo la parte pubblica del certificato, che si desidera consegnare dal sito Web al client.

Se è specificato SSLCertificateChainFile, il server Web allegherà i certificati associati (per creare un'intera catena a una CA principale) al certificato del server Web. Puoi anche inserire la parte privata del tuo certificato nel file come specificato in SSLCertificateFile ma questo è NON consigliato per motivi di sicurezza (ad esempio il server web ha un bug, si verifica un buffer di flusso e stampa la chiave privata per l'aggressore) .

invece mettere solo la chiave privata in un file separato e dichiarare in SSLCertificateKeyFile

Problemi correlati