Catena certificati - certificato intermedio e radice - installato richiesto?

4

Recentemente ho acquistato un certificato SSL da comodo per il mio dominio - orakoha.com

Dopo aver inviato la CSR ecc., la verifica del controllo di dominio ecc., mi viene rilasciato un file zip contenente 4 documenti che ritengo siano il mio certificato emesso, i certificati intermedi CA e il certificato radice.

  1. www_orakoha_com.crt
  2. COMODORSADomainValidationSecureServerCA.crt
  3. COMODORSAAddTrustCA.crt
  4. AddTrustExternalCARoot.crt (certificato di origine)

La mia domanda è la seguente

  • Quando un browser visita il mio sito (ad esempio www.orakoha.com ), scarica my cert e vedere che non ha il rilascio di ca (intermedio ca chiave pubblica), scaricherà automaticamente tali certificati intermedi (ad esempio COMODORSAAddTrustCA.crt ) dal mio server web? o lo farà richiedere all'utente finale (utilizzando il browser) se lo desidera installare quei certificati?
  • Se un browser non ha il certificato di root del root ca emettendo i certificati intermedi / mio certificato, che cosa accadrà? sarà il mio webserver invia il cert root e il browser chiederà se installare il certificato di root o no?
  • Come faccio a vedere quali sono i certificati radice che sono già installati in il browser?
posta Noob 04.04.2016 - 17:28
fonte

2 risposte

3

In breve: i certificati intermedi devono essere inviati all'interno dell'handshake TLS (necessita di una corretta configurazione del server) e solo la CA locale sul client sarà considerata come ancore affidabile.

In dettaglio:

... see that it does not have the issuing ca (intermediate ca's public key), will it automatically download those intermediate cert (e.g. COMODORSAAddTrustCA.crt) from my webserver ?

Nessun browser scaricherà il certificato dal tuo sito. Se nell'handshake TLS mancano i certificati intermedi, alcuni browser potrebbero provare a scaricare il certificato da altri siti ma non si deve fare affidamento su di esso. Google Chrome sul desktop sembra farlo, altri browser no.

or it will prompt the end-user (using the browser) whether he/she wanted to install those certs?

No, non ci sarà alcun suggerimento. Solo un errore che il certificato non può essere convalidato.

... will my webserver send the root cert over and the browser will prompt whether to install the root cert or not?

No. Sarebbe stupido se un browser si fidasse di qualsiasi certificato di root casuale inviato da un server, perché allora l'attacco di uomo nel mezzo sarebbe semplice. Anche i prompt non sono di grande aiuto perché la maggior parte degli utenti fa semplicemente clic su una finestra di dialogo che non capiscono. I browser si fidano solo della CA fornita con il browser o fornita dal sistema operativo e dalla CA installata in modo esplicito. L'installazione di una nuova root è più complessa e solitamente implica che l'utente scarica, installa e si fida del certificato CA.

How do I see what are the root certs that are already installed in the browser?

Ci sono molte informazioni su questo su internet. Segui semplicemente i link dalla cerca "visualizza il browser dei certificati di root" . Nota che i metodi attuali dipendono dal browser e dal sistema operativo.

    
risposta data 04.04.2016 - 17:40
fonte
2

Per prima cosa, dovresti leggere la domanda più famosa su questo sito: Come funziona SSL / TLS funziona? , avere una buona conoscenza di TLS risolverà molte delle tue domande.

Rispondere alle tue domande:

a) When a browser visit my site ... will prompt the end-user (using the browser) whether he/she wanted to install those certs?

No, visitare un sito in un browser non comporterà mai l'utente che installa certificati. Quando installi un certificato nel tuo negozio di fiducia del tuo sistema operativo stai dicendo "Conosco l'origine di questo certificato e mi fido del tutto". Come posso fidarmi di un certificato che mi è stato dato da un sito casuale che ho appena visitato? Come faccio a sapere che il certificato che ho scaricato appartiene effettivamente al sito e non un aggressore man-in-the-middle?

b) If a browser does not have the root certificate of the root ca issuing the intermediate certs/my cert, what will happen?

Semplice, il certificato fallirà la convalida e il browser genererà avvisi arrabbiati.

Il tuo trust-store del certificato viene compilato con certificati radice correttamente controllati da esperti di sicurezza di Google / Chrome, Mozilla / Firefox, Apple, Microsoft, ecc. (questi sono chiamati "certificati bloccati"). Se un certificato non è stato rilasciato da una radice attendibile, allora non è affidabile. Installare un certificato radice casuale per aggirare una radice attendibile equivale fondamentalmente a disabilitare la scansione antivirus perché ti dice che il file che stai tentando di aprire contiene un virus. Questi meccanismi di sicurezza esistono per una ragione: ascoltali!

c) How do I see what are the root certs that are already installed in the browser?

In Chrome è nelle impostazioni qui: (si trova in posti simili in altri browser)

    
risposta data 04.04.2016 - 17:46
fonte