SSL Zertifikat für Plesk, Postfix und Courier
Der Schrei nach mehr Sicherheit wird immer lauter. Nach meinem Postfix TLS/SSL Beitrag möchte ich euch beschreiben, wie ihr ein SSL Zertifikat einer Zertifizierungsstelle, wie beispielsweise StartSSL, in ein Plesk System einbinden könnt. Ebenfalls rüsten wir SMTP, POP3 und IMAP mit diesem Zertifikat aus.
Punkt 1: Das Plesk Panel
Standardmäßig nutzt Plesk ein selbst signiertes SSL Zertifikat, das ist zwar okay aber störend. Nachdem ihr ein CSR erstellt und die Zertifizierungsstelle euer Zertifikat signiert hat, könnt ihr dies in eurem Plesk Panel hinterlegen.
Beachtet bitte, dass ihr 3 Zertifikatsteile benötigt. Euren KEY, das CRT (StartSSL) und das CA (sub.class1.server.ca.pem).
- Navigiert in Plesk zu Tools & Einstellungen -> SSL-Zertifikate
- Klickt auf SSL-Zertifikat Hinzufügen
- Kopiert alle 3 benötigten Zertifikatsteile in die Felder und drück auf Text senden
- In der Zertifikatsliste sollte nun euer benanntes SSL Zertifikat zu finden sein. Setzt einen Haken vor euer Zertifikat und bestätigt wie im Bild.
- Abschließend sichern wir das Plesk Panel mit dem neuen Zertifikat ab.
Punkt 2: Postfix / Mailserver
Der Plesk Mailserver Postfix soll natürlich auch mit dem neuen SSL Zertifikat ausgerüstet werden. In diesem Beispiel gehe ich davon aus, dass alle 3 Zertifikatsteile in diesem Format vorliegen und ihr euch in dem Verzeichnis befindet indem auch die Zertifikate liegen.
- mail.DOMAIN.de.key
- mail.DOMAIN.de.crt
- sub.class1.server.ca.pem
Eine Plesk Installation legt das Postfix SSL Zertifikat unter /etc/postfix/postfix_default.pem ab. Wir sichern diese Datei und kopieren unser neues Zertifikat im PEM-Format zusammen.
1 2 | cp /etc/postfix/postfix_default.pem /etc/postfix/postfix_default.pem.orig cat mail.DOMAIN.de.key mail.DOMAIN.de.crt sub.class1.server.ca.pem > /etc/postfix/postfix_default.pem |
Wir starten Postfix neu.
1 | /etc/init.d/postfix restart |
Punkt 3: Courier / IMAP/POP3
Damit wir oder unsere Kunden beim Abrufen der Nachrichten keinen Fehler erhalten, geben wir Courier ebenfalls das neue Zertifikat-Bundle.
1 2 3 4 5 | cp /usr/share/courier-imap/imapd.pem /usr/share/courier-imap/imapd.pem.orig cat mail.DOMAIN.de.key mail.DOMAIN.de.crt sub.class1.server.ca.pem > /usr/share/courier-imap/imapd.pem cp /usr/share/courier-imap/pop3d.pem /usr/share/courier-imap/pop3d.pem.orig cat mail.DOMAIN.de.key mail.DOMAIN.de.crt sub.class1.server.ca.pem > /usr/share/courier-imap/pop3d.pem |
Courier neu starten.
1 | /etc/init.d/courier-imap restart |
Punkt 4: SSL Zertifikatskette überprüfen
Jetzt sollten wir unsere Arbeit überprüfen, das machen wir am einfachsten mit diesen drei OpenSSL Befehlen.
1 2 3 | # openssl s_client -starttls smtp -crlf -connect mail.DOMAIN.de:25 # openssl s_client -starttls pop3 -crlf -connect mail.DOMAIN.de:110 # openssl s_client -starttls imap -crlf -connect mail.DOMAIN.de:143 |
Mit diesen Befehlen testen wir Postfix und Courier (IMAP/POP3). Dabei interessiert uns die Ausgabe an oberster Stelle. Bei einer korrekten Zertifikatskette und StartSSL sollte dies in etwa so aussehen.
1 2 3 4 5 6 7 | --- Certificate chain 0 s:/description=FmJdZEx3lsXPoIXv/C=DE/CN=mail.DOMAIN.de/emailAddress=hostmaster@DOMAIN.de i:/C=IL/O=StartCom Ltd./OU=Secure Digital Certificate Signing/CN=StartCom Class 1 Primary Intermediate Server CA 1 s:/C=IL/O=StartCom Ltd./OU=Secure Digital Certificate Signing/CN=StartCom Class 1 Primary Intermediate Server CA i:/C=IL/O=StartCom Ltd./OU=Secure Digital Certificate Signing/CN=StartCom Certification Authority --- |
Wenn eine Zeile fehlt, prüfe bitte deine letzten Schritte.
0
Hallo.
Ich habe das bei StartSSL (Class 2) immer so gemacht:
1. Domain verifiziert
2. Zertifikat angefordert
2.1. Ersten Schritt übersprungen
2.2. Den genierten CRS von Plesk bei StartSSL angegeben
2.3. *.Domain ausgewählt
2.4. Nach Überprüfung das Zertifikat von StartSSL in Plesk eingegeben
2.5. SSL zugewiesen, Apache neugestartet
und das war es auch schon. Funktionierte bei mir immer ohne Probleme.
Nun wundere ich mich, dass du neben diese Sachen auch noch mittels der Datei „sub.class1.server.ca.pem“ diese als CA zusätzlich angegeben hast, sofern ich das richtig verstanden habe.
Das hatte ich bisher noch nicht so gemacht… Aber jetzt kommt das eigentliche Problem.
Alle Zertifikate funktionieren so, wie ich es oben geschrieben habe, ohne Problem. Nur mit FireFox anscheinend nicht.
Anscheinend muss ein „Zwischenzertifikat“ installiert werden? Die „sub.class1.server.ca.pem“?
Deshalb wundert mich das nun alles ein Bisschen.
Weißt du da irgendwie was?