lighttpd und PositiveSSL-Certs
Ich habe gerade die lite-Version der auf http://www.psw.net feilgebotenen SSL-Certs ausprobiert. Es gibt keine direkte Anleitung für die Installation des Zertifikates innerhalb von lighttpd (lighty) und die in der Bestätigungsmail angegebenen Links sind meiner Erfahrung nach bestenfalls irreführend.
Der Bestellprozess
Zunächst ist ein Serverkey für die Domain www.domain.tld mit OpenSSL zu erstellen. Im wahren Leben ist natürlich der Ausdruck „www_domain_tld“ durch eine eigene, reale Domain zu ersetzen. Das geht auf der Kommandozeile z.B. durch Eingabe von:
openssl req ‑new ‑nodes ‑keyout www_domain_tld.key ‑out www_domain_tld.csr
Dabei werden einige Informationen abgefragt, die man mit sinnvollen Daten füttern sollte. Immens wichtig ist die Eingabe
Common Name (eg, YOUR name) []: www.domain.tld
Nur dann schützt später das ausgestellte Zertifikat die Domains http://domain.tld und http://www.domain.tld (das ist bei der verwendeten CA PositiveSSL automatisch so).
Für den Bestellprozess wird der Inhalt der Datei www_domain_tld.csr benötigt. Für die Installation des Zertifikates brauchen wir später noch die Datei www_domain_tld.key.
Installation des Zertifikates unter lighttpd
Stimmen die bei dem zuständigen NIC hinterlegten Daten mit den Daten auf der mitzusendenden Personalausweiskopie überein, erhält man nach 10–12 Minuten (so man nicht greylistetd) eine Mail mit anghängtem Zip-Archiv mit folgenden Dateien:
- AddTrustExternalCARoot.crt
- PositiveSSLCA.crt
- UTNAddTrustServerCA.crt
- www_domain_tld.crt
Jetzt legt man unterhalb von /etc/lighttpd (oder einem möglicherweise anderem Config-Verzeichnis von lighttpd) einen Ordner mit dem Namen ssl an.
Ein
touch www_domain_tld.ca www_domain_tld.pem
innerhalb dieses Verzeichnisses legt zwei leere Dateien an. In die Datei www_domain_tld.ca kopiert man den Inhalt der Dateien
- AddTrustExternalCARoot.crt
- PositiveSSLCA.crt
- UTNAddTrustServerCA.crt
In genau dieser Reihenfolgen und speichert das Ganze dann ab oder macht es direkt mit z.B. cat und Ausgabeumlenkung in die Datei. Dabei zickte bei mir allerdings lightys Parser hinterher etwas herum., der gernen einen CR nach jedem Zwischenzertifikat sehen wollte. Diese drei Dateien gibt es auch als Bundle-Textdatei zum Download auf der Seite von PositiveSSL.
In die Datei www_domain_tld.pem kopiert man den Inhalt der Dateien
- www_domain_tld.key
- www_domain_tld.crt
in genau dieser Reihenfolge. Der private Serverkey muss vor dem ausgestellten Zertifikat stehen. Dann noch schnell einen Demo SSL-Host innerhalb von lighttpd.conf aufgesetzt:
$SERVER[„socket“] == „0.0.0.0:443“ {
ssl.engine = „enable“
ssl.ca-file = „/etc/lighttpd/ssl/www_domain_tld.ca“
ssl.pemfile = „/etc/lighttpd/ssl/www_domain_tld.pem“server.document-root = „/var/www/ssl“
}
… danach den Server neugestartet und voilá: Running on SSL und kein Zertifikatsfehlergemecker des Browsers (Testversion des Zertifikats mit 30tägiger Laufzeit ist kostenlos).
Die Installation unter Apache müsste sehr ähnlich funktionieren. Auch hier braucht es eine Aufteilung zwischen Zwischenzertifikat und Serverzertifikat.
Sehr hilfreich! Ich konnte es gerade anwenden und es funktioniert.
Im Falle von Lighty und PSW kann man aber bei „Verwendete Serversoftware“ direkt „Apache/mod_ssl“ auswaehlen, da man dann die *.ca und *.pem Datei direkt zugeschickt bekommt :). Waehlt man dort „nicht aufgelistet“, so bekommt man die, von dir genannten, Dateien. So ist man natuerlich am flexibelsten, allerdings ist man dann auf Seiten wie diese angewiesen :D…
Weiter so.
M.f.G.
Andreas Schipplock.
Der Unterschied war – glaube ich – damals noch, dass es dabei eine separate Datei für das Zwischenzertifikat gab. Dafür kennt der Indianer eine Direktive, lighty hingegen nicht – daher der Trick 17. Es mag aber sein, dass das nun schon wieder anders geworden ist, da die Sache mit den Zwischenzertifikaten ja nicht so intuitiv und bequem ist.
Pingback: Class 2 Zertifizierung durch startssl - riecken.de - Gedanken zu Bildung, Lehre und Schule