Wir haben ein SSL-Zertifikat für unsere Website von Network Solutions. Nach dem Upgrade von Apache / OpenSSL auf Version 2.4.9 wird beim Starten von HTTPD die folgende Warnung angezeigt:
AH02559: The SSLCertificateChainFile directive (/etc/httpd/conf.d/ssl.conf:105) is deprecated, SSLCertificateFile should be used instead
Laut dem Apache-Handbuch für mod_ssl ist dies tatsächlich der Fall:
SSLCertificateChainFile ist veraltet
SSLCertificateChainFile wurde mit Version 2.4.8 obsolet, als SSLCertificateFile erweitert wurde, um auch Zwischenzertifizierungsstellenzertifikate aus der Serverzertifikatdatei zu laden.
In der Dokumentation zu SSLCertificateFile sah es so aus, als müsste ich nur meinen Aufruf von SSLCertificateChainFile durch SSLCertificateFile ersetzen .
Diese Änderung hat meine ssl.conf davon abgewendet:
SSLCertificateFile /etc/ssl/STAR.EXAMPLE.COM.crt
SSLCertificateKeyFile /etc/ssl/server.key
SSLCertificateChainFile /etc/ssl/Apache_Plesk_Install.txt
dazu:
SSLCertificateFile /etc/ssl/STAR.EXAMPLE.COM.crt
SSLCertificateFile /etc/ssl/Apache_Plesk_Install.txt
SSLCertificateKeyFile /etc/ssl/server.key
... aber das geht nicht. Apache weigert sich einfach, ohne Fehlermeldung zu starten.
Ich bin mir nicht sicher, was ich sonst noch versuchen soll, da ich mit mod_ssl- oder SSL-Zertifikaten im Allgemeinen nicht so vertraut bin. Ich erinnere mich, dass wir die Datei Apache_Plesk_Install.txt für Internet Explorer hinzufügen mussten , um keine SSL-Warnung auf unserer Site zu erhalten, aber ansonsten habe ich keine Ahnung.
Jede Hilfe wäre sehr dankbar. Vielen Dank.
quelle
Antworten:
Ich hatte das gleiche Problem. Ich habe gerade diese Zeilen ersetzt
/etc/apache2/site-enabled/default-ssl.conf
Wie Sie sehen, habe ich gerade das auskommentiert
SSLCertificateChainFile
. Dann, als ich denselben Fehler wie Sie sah, verkettete ich den Inhalt von mychain.crt
am Ende vondomain.crt
, wie folgt:Und es funktionierte wie ein Zauber.
quelle
Ich verwende das folgende Skript, um ein Zertifikat-Bundle zu erstellen, das das verkettete Zertifikat enthält.
Beginnen Sie mit dem Serverzertifikat und durchlaufen Sie nacheinander alle Zwischenzertifikate in der Zertifikatskette, um zum Stammzertifikat zurückzukehren.
Dabei werden die entsprechenden Zertifikatnamen durch Ihren tatsächlichen Zertifikatnamen ersetzt.
quelle
Haben Sie das Standortzertifikat, die Zwischenprodukte sowie eine Datei, die in der Anweisung SSLCertificateFile angegeben ist, und den privaten Schlüssel, der in einer Datei verkettet ist, die in SSLCertificateKeyFile angegeben ist, und Sie sollten alle festgelegt sein. Sie könnten zwar den privaten Schlüssel in der gleichen Datei haben wie die Zertifikate, aber davon wird abgeraten. Weitere Informationen finden Sie in der Dokumentation:
http://httpd.apache.org/docs/current/mod/mod_ssl.html#sslcertificatefile
Ich würde empfehlen, dass das Stammzertifizierungsstellenzertifikat nicht Teil der SSLCertificateFile ist, da der Client die haben sollte Stammzertifizierungsstellenzertifikat als vertrauenswürdig, damit die Zertifikatüberprüfung wie vorgesehen funktioniert.
Wenn in den Apache-Fehlerprotokollen nichts enthalten ist, kann das Fehlerprotokoll auf eine feinere Granularität eingestellt werden als inhttp://httpd.apache.org/docs/current/mod/core.html#loglevel
quelle