Wer einen eigenen Server hat, wo ein Mailserver mit Qmail läuft, kann
nach dieser Anleitung die Fehlermeldung wegbekommen das ein unsicheres
Zertifikat benutzt wird und ob sie dem Vertrauen.
Bevor wir loslegen ein wichtiger Hinweis. Alle Dateien die überschrieben
werden bzw ausgetauscht werden sollten vorher gesichert werden. Sollte
was schief gehen und das Zertifikat nicht funktionieren wird der
Mailserver später im WorstCase nicht mehr starten!
Die Beschreibung ist auf Ubuntu ausgelegt, ein paar Sachen müssen
abgeändert werden um die Beschreibung für andere Distributionen nutzen
zu können!
Legen wir los :
Wir benötigen OpenSSL.
sudo apt-get install openssl
Danach müssen wir Backups anlegen von den folgenden Dateien :
/var/qmail/control/servercert.pem
/usr/share/courier-imap/pop3d.pem
/usr/share/courier-imap/imapd.pem
Die Datei servercert ist für den smtp Dienst, pop3 wie der Name schon
sagt für den pop3 Dienst und imap für imap. Alle drei Dateien müssen
ersetzt werden.
Zwei Dateien unter /etc/courier-imap müssen noch bearbeitet werden. Auch diese sollten vorher gesichert werden.
Es geht um die Datei imapd.cnf und pop3d.cnf.
Aussehen sollten diese wie folgt. Statt NY kann man dort auch was anderes angeben wie NI für Niedersachen.
imapd.cnf
RANDFILE = /usr/share/courier-imap/imapd.rand
[ req ]
default_bits = 1024
encrypt_key = yes
distinguished_name = req_dn
x509_extensions = cert_type
prompt = no
[ req_dn ]
C=US
ST=NY
L=New York
O=Courier Mail Server
OU=Automatically-generated IMAP SSL key
CN=localhost
emailAddress=postmaster@example.com
[ cert_type ]
nsCertType = server
pop3d.cnf
RANDFILE = /usr/share/courier-imap/imapd.rand
[ req ]
default_bits = 1024
encrypt_key = yes
distinguished_name = req_dn
x509_extensions = cert_type
prompt = no
[ req_dn ]
C=US
ST=NY
L=New York
O=Courier Mail Server
OU=Automatically-generated IMAP SSL key
CN=localhost
emailAddress=postmaster@example.com
[ cert_type ]
nsCertType = server
Wir fangen mit der servercert an.
openssl req -new -x509 -nodes -out
/var/qmail/control/servercert.pem -days 3650 -keyout
/var/qmail/control/servercert.pem
chmod 640 /var/qmail/control/servercert.pem
chown qmaild.qmail /var/qmail/control/servercert.pem
ln -s /var/qmail/control/servercert.pem
/var/qmail/control/clientcert.pem
Nach der Eingabe von dem Befehl openssl müssen noch einige Angaben
gemacht werden :
Country Name (2 letter code) [AU]: DE
State or Province Name (full name) [Some-State]: Germany
Organization Name (eg, company) [Internet Widgits Pty Ltd]: Firmenname
Organizational Unit Name (eg, section) []: Abteilung
Common Name (eg, YOUR name) []: www.domain.tld
Common Name (eg, YOUR name) []: mail.domain.tld
Email Address []: ansprechpartner@domain.tld
Diese vier Befehle geben wir ein in die Kommandozeile. Bei dem Befehl
chown wird die Gruppe und der User gleichzeitig geändert. Der Symlink
vom servercert auf clientcert existiert meistens schon, wenn nicht
anlegen ansonsten kommt eine Fehlermeldung, die wir ignorieren können.
Jetzt kommen die anderen beiden Dateien dran (imapd.pem und pop3d.pem).
/usr/share/courier-imap/mkpop3dcert
/usr/share/courier-imap/mkimapdcert
User und Gruppe sollten root sein und die Rechte auf 600 (rw User).
Danach starten wir den Dienst neu
/etc/init.d/qmail restart
und wir verschicken über den Server einen Email. Wir sollten nun die
Aufforderung erhalten ob wir das Zertifikat runter laden wollen. Das
machen wir einmal und dann sollte keine Fehlermeldung mehr auf treten.
Daran können wir auch erkennen ob es funktioniert hat. Wenn das nicht
der Fall ist Backup wieder einspielen und den Dienst neu starten.