Normalerweise werden Zertifikate für Domains auf der Basis von IP Adressen ausgegeben. Das heißt bei einer IP kann ich nur eine einzelne Domain bedienen. Im CAcert-Wiki gibt es jedoch einige Hinweise wie sich dieses Problem für mehrere VHosts umgehen lässt. Ich habe Methode 1) gewählt und erfolgreich getestet. So geht’s:
Angenommen wir haben zwei Domains und wollen für diese Zertifikate erstellen. Als Beispiel nehme ich domain1.de, www.domain1.de, webmail.domain2.de und www.domain2.de. Zuerst müssen beide Domains bei CAcert registriert und bestätigt werden. Als nächsten Schritt muss die Zertifikatanforderung erstellt werden.
Dazu die openssl.cnf editieren (hier Ubuntu linux):
nano /etc/ssl/openssl.cnf
[ req ]
muss req_extensions = v3_req
beinhalten.
Unter [ v3_req ]
muss eingefügt werden:
subjectAltName = DNS:www.domain1.de, DNS:webmail.domain2.de, DNS:www.domain2.de
Dann die Datei speichern und wir machen uns an das Erzeugen des privaten 1024-Bit-Schlüssels:
openssl genrsa -out mykey.pem 1024
Jetzt wurde eine Datei mykey.pem angelegt. Jetzt erstellen wir die Anforderung für CAcert:
openssl req -new -key mykey.pem -out myreq.pem
Als CommonName (CN) bitte unbedingt domain1.de angeben. myreq.pem wurde daraufhin erstellt und die alternativen Namen dabei aus der Config übernommen. Hier noch zwei Befehle zum Überprüfen der Eingaben:
openssl req -in myreq.pem -noout -verify -key mykey.pem
openssl req -in myreq.pem -noout -text
myreq.pem muss jetzt an CAcert (new Server Certificate) gesendet werden. Bei Erfolg erhält man das fertige Zertifikat zurück. Jetzt sind alle Teile vorhanden um das Zertifikat in Plesk zu aktivieren. Unter Server/Certificates muss ein neues erstellt werden. Dort den private key (mykey.pem), das erhaltene Zertifikat und das root-Zertifikat in den Textfeldern angeben. Zur Sicherheit kann man in Plesk auch nochmal die „Preferences“ ausfüllen. Hat das soweit funktioniert, einfach das neue Zertifikat auf ‚default‘ setzen und auch bei ‚IP-Adresses‘ das Zertifikat ändern. Viel Erfolg!