
Aus irgendeinem Grund startet Apache nicht. Ich habe versucht, den Server neu zu starten, aber ohne Erfolg. Es ist ungefähr 2 Uhr morgens und mein Gehirn ist frittiert. Hier ist das Apache-Protokoll. Ich habe keine Konfigurationen, Zertifikate oder Schlüssel berührt, die dies verursacht hätten, also weiß ich nicht, was passiert ist. Die erste Zeile ist hier, aber sie ist falsch, aber der Schlüssel befindet sich genau an der Stelle, an der ich die Virtualhosts-Datei zum Nachschlagen angegeben habe.
[Wed Mar 04 00:13:51.898515 2015] [ssl:error] [pid 4307] AH02203: Init: Private key not found
[Wed Mar 04 00:13:51.899365 2015] [ssl:error] [pid 4307] SSL Library Error: error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
[Wed Mar 04 00:13:51.899381 2015] [ssl:error] [pid 4307] SSL Library Error: error:0D08303A:asn1 encoding routines:ASN1_TEMPLATE_NOEXP_D2I:nested asn1 error
[Wed Mar 04 00:13:51.899391 2015] [ssl:error] [pid 4307] SSL Library Error: error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
[Wed Mar 04 00:13:51.899402 2015] [ssl:error] [pid 4307] SSL Library Error: error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error (Type=RSA)
[Wed Mar 04 00:13:51.899413 2015] [ssl:error] [pid 4307] SSL Library Error: error:04093004:rsa routines:OLD_RSA_PRIV_DECODE:RSA lib
[Wed Mar 04 00:13:51.899422 2015] [ssl:error] [pid 4307] SSL Library Error: error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
[Wed Mar 04 00:13:51.899432 2015] [ssl:error] [pid 4307] SSL Library Error: error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error (Type=PKCS8_PRIV_KEY_INFO)
Virtuelle Hosts:
# Optionally load the headers module:
#LoadModule headers_module modules/mod_headers.so
LoadModule ssl_module /usr/lib/apache2/modules/mod_ssl.so
SSLCertificateFile /etc/ssl/certs/foobar.org.ssl.crt
SSLCertificateKeyFile /etc/ssl/private/foobar.org.ssl.key
SSLCertificateChainFile /etc/ssl/certs/sub.class1.server.ca.pem
SSLCACertificateFile /etc/ssl/certs/ca.pem
SSLCompression Off
SSLHonorCipherOrder On
SSLSessionCache shmcb:/etc/apache2/logs/ssl_gcache_data(512000)
SSLCipherSuite ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS:!AES256
SSLUseStapling on
SSLStaplingCache "shmcb:logs/stapling-cache(150000)"
SSLSessionCacheTimeout 300
<VirtualHost *:443>
ServerAdmin [email protected]
ServerName foobar.org
# ServerAlias foobar.org
DirectoryIndex index.html index.php
DocumentRoot /var/www/foobar.org/public_html/
LogLevel warn
ErrorDocument 404 /404.php
# ErrorDocument 500 /500.html
ErrorLog /var/www/foobar.org/log/error.log
CustomLog /var/www/foobar.org/log/access.log combined
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
Header always set Strict-Transport-Security "max-age=15768000;includeSubDomains"
</VirtualHost>
Ausgabe des Befehls ls:
-rw-rw-r-- 1 brandon brandon 1767 Mar 4 00:02 foobar.org.ssl.key
-rw-r----- 1 root ssl-cert 1704 Apr 20 2013 ssl-cert-snakeoil.key
Antwort1
Hier gibt es einige kritische Probleme. Die Fehler, die Apache ausspuckt, sagen Ihnen, dass der private Schlüssel nicht als gültige ASN.1 analysiert werden kann. Dies würde darauf hindeuten, dass Sie irgendwo im Schlüssel irrelevante Daten haben, wie z. B. ein Leerzeichen. Zweitens sind Ihre Berechtigungen viel zu lax. Der private Schlüssel sollte root gehören und Berechtigungen ähnlich 640 oder -rw-r---- haben.
Antwort2
Sie haben wahrscheinlich die Kodierung Ihrer Schlüsseldatei während der Übertragung geändert
rm /etc/pki/tls/certs/your_server.key
cp /your_server.key /etc/pki/tls/certs/
service httpd start
Antwort3
Sie müssen Ihrer SSL-Schlüsseldatei mit dem Befehl chmod 600 ssl.key die Berechtigung 600 erteilen. Manchmal geschieht dies aufgrund der Sicherheitsrichtlinie. Nachdem Sie die Berechtigung geändert und den Apache-Dienst gestartet haben, funktioniert es.