Direttiva SSLCertificateChainFile obsoleta di Apache (AH02559)


8

Recentemente ho aggiornato Apache da 2.2 a 2.4 e non riesco a capire come deprecare una SSLCertificateChainFiledirettiva.

L'errore:

me@jessie:~$ sudo apache2ctl configtest 
AH02559: The SSLCertificateChainFile directive (/etc/apache2/sites-enabled/https.conf:103) is deprecated, SSLCertificateFile should be used instead
Syntax OK

Le mie impostazioni attuali:

SSLCertificateFile    /etc/apache2/cert/ssl.crt
SSLCertificateKeyFile /etc/apache2/cert/ssl.key
SSLCertificateChainFile /etc/apache2/cert/sub.class1.server.sha2.ca.pem
SSLCACertificateFile /etc/apache2/cert/ca.pem

Il certificato è firmato da StartCOM. Il manuale dice che ora l'intera catena dovrebbe essere in un file, specificato dalla SSLCertificateFiledirettiva, ma non so quali chiavi e in quale ordine dovrei concatenarmi a questo file.

Risposte:


8

Dato che lo stai usando nella tua configurazione di Apache:

SSLCertificateFile    /etc/apache2/cert/ssl.crt
SSLCertificateKeyFile /etc/apache2/cert/ssl.key

Il /etc/apache2/cert/ssl.crtfile dovrebbe contenere

  1. certificato ad es. tuodominio.com
  2. certificato della prima CA intermedia, firmato dalla CA principale (ad es. CA Server intermedio primario Classe 1 Start)
  3. certificato della seconda CA intermedia, firmato dalla prima CA intermedia (se esiste una seconda CA intermedia nella catena di certificati)

È necessario inserire tutti i certificati CA intermedi nel file crt. A seconda della catena di certificati del proprio certificato, ci sarà un numero variabile di CA invitate.

Non è nemmeno necessario aggiungere la CA principale, poiché deve trovarsi nel truststore di tutti i client, altrimenti i client riceveranno una pagina di errore, inoltre, se lo si aggiunge alla catena, sarà solo un ulteriore sovraccarico per stabilire connessioni SSL, poiché deve essere trasferito per ogni nuova sessione SSL. In realtà la maggior parte dei client avrà anche certificati CA intermedi installati, ma alcuni potrebbero non esserlo, ad esempio i telefoni cellulari non hanno molti certificati CA intermedi, quindi aggiungerei sicuramente quelli.

Il /etc/apache2/cert/ssl.keyfile rimarrà lo stesso, ovvero conterrà la chiave per il certificato di tuodominio.com


Ok, se ti ho capito correttamente, dovrei creare un file con il seguente nell'ordine: 1) ssl.crt; 2) sub.class1.server.sha2.ca.pem; 3) cosa? Spiegare quali certificati devono essere aggiunti nei terzi (e possibili ulteriori) luoghi.
Neurotrasmettitore

Dipende dalla catena attuale, intendo il numero di CA coinvolte nella firma del certificato. La catena può consistere solo di 2 AC. ad es. CA principale e una CA intermedia. Ma può consistere in CA principale e più di una CA intermedia. Il file ssl.crt deve contenere tutti i certificati CA intermedi, dall'alto verso il basso. Per questo motivo, dipende assolutamente dal tuo caso specifico come dovrebbe essere il tuo ssl.crt.
Fholzer,

Come si può sapere quali CA sono coinvolte nella firma di un certificato?
Neurotrasmettitore

2
Costruire la catena non è banale per un principiante, immagino. Di solito corro openssl x509 -subject -issuer -noout -in certificate.of.yourdomain.crta vedere l'emittente. Quindi scarico il certificato di rilascio dal sito Web della mia CA, nel tuo caso: startsl.com/certs . Quindi eseguire il comando su quel certificato. Ripetere fino a quando il problema è uguale a soggetto, il che significa che il certificato è autofirmato ed è il certificato CA principale. aggiungi tutti quei file eccetto il certificato CA radice a ssl.crt e il gioco è fatto.
Fholzer,

Grazie per il supporto, ho seguito la catena e generato un certificato combinato. Ma per qualche motivo il test Qualys SSL indica che i client che si connettono al mio host devono scaricare in più CA di InterCenter principale 1 di StartCom Classe, che ho sicuramente incluso nel certificato combinato ( screenshot ). Quello è strano.
Neurotrasmettitore

1

Bene, alla fine l'ho capito ultimamente e ho deciso di pubblicare i dettagli nel modulo di risposta.

Ora StartSSL inserisce il certificato nell'archivio zip quando lo si recupera e ci sono molti archivi inclusi lì, uno di particolare interesse è ApacheServer.zipun modulo compatibile con Apache> 2.4. I file nella cartella Apache sono:

1_root_bundle.crt
2_myhost.tld.crt

Devi preparare SSLCertificateFileda entrambi questi certificati, ma in questo ordine:

cat 2_myhost.tld.crt 1_root_bundle.crt > myhost.tld_combined.crt

Quindi nel sito conf sarà solo:

    SSLCertificateFile    /etc/apache2/cert/myhost.tld_combined.crt
    SSLCertificateKeyFile /etc/apache2/cert/myhost.tld.key

E tutto andrà bene, anche il test SSL Qualys .

Funziona con StartCom StartSSL e con i certificati WoSign. Il formato è lo stesso.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.