CACert für den eigenen Webserver

Nachdem ich gleich Punkte von vier Assurern bekommen habe, habe ich meinen Webserver mit CACert-signierten Zertifikaten ausgestattet. Das Blog spricht jetzt also SSL und wenn man das CACErt-Root-Zertifikat installiert, klappt das auch ohne Browserwarnung.

Und so geht’s: Zuerst muss man/Frau einen Zertifikatsrequest erzeugen:

openssl req -new -newkey rsa:1024 -nodes -keyout mykey.pem -out myreq.pem

mykey.pem enthält den Private Key myreq.pem ist der Zertifikatsrequest. Dieser Zertifikatsrequest wird später an CACert / Verisign gesendet um ein signiertes Serverzertifikat zu erhalten.

Bei CACert muss man sich aber erstmal eine Domain anlegen (recht im Menü, Domain hinzufügen). Dort muss der vollständige Servername (www.meinedomain.de) eingetragen werden. An einen User dieses Servers wird dann eine Testmail gesendet, um zu prüfen, ob der Server wirklich Dir gehört. Dieser Teil ist sehr spannend, weil man dann erstmal merkt, wie kaputt der eigene Mailserver konfiguriert ist. Wenn also nach unzähligen Versuchen, der Server endlich Mails an root@www.meinedomain.de annimmt (und die Mail nicht als Spam klassifiziert wird…), kann man den Link in der Mail anklicken. Damit ist die Domain verifiziert.

Als nächstes kann man unter Server-Zertifikate ein neues Zertifikat erstellen, in das Webformular wird der Inhalt der Datei myreq.pem eingefügt, nach dem Absenden erhält man das Zertifikat, zur Sicherheit auch nochmal per Mail. Das Zertifikat ist abhängig vom Assurer-Punktekonto 6 oder 24 Monate gültig.

Jetzt muss das leckere neue Zertifkat nur noch dem Apache untergejubelt werden:

SSLEngine On
SSLCertificateFile /etc/apache2/ssl/spark.dnsalias.net.cert.pem
SSLCertificateKEyFile /etc/apache2/ssl/spark.dnsalias.net.key.pem

SSLProtocol all
SSLCipherSuite HIGH:MEDIUM

Das war’s 🙂

SSL funktioniert :)

Update: Ich habe ssl erstmal wieder abgeschaltet, SSL auf mehreren virtuellen Hosts und ohne feste IP-Adressen führt zu sehr merkwürdigen Effekten 🙁