LetsEncrypt-Zertifikat für Kerio-Mailserver unter CentOS 8
Damit auch der on premises Kerio-Mailserver in den Genuss eines ordentlichen Zertifikats kommt, werden wir ein LetsEncrypt Zertifikat erzeugen lassen und für den Kerio-Connect Servcer installieren.
Der Kerio-Connect Server läuft auf einem CentOS 8 System.
Wir müssen hierzu die folgenden Punkte abarbeiten:
- LetsEncrypt - Umgebung installieren
- Das LetsEncrypt-Zertifikat für unsere Domain erzeugen
- Das erzeugte Zertifikat dem Kerio-Connect unterjubeln
LetsEncrypt Umgebung installieren
Ale erstes müssen wir Snapd als Voraussetzung für LetsEncrypt installieren.
dnf install epel-release |
Jetzt einmal ab- und wieder anmelden, damit die Umgebung korrekt ist.
Nun installieren wir LetsEncrypt:
snap install core |
Es ist möglich, dass nach Ausführen dieses Befehls die folgende Meldung erscheint.
error: too early for operation, device not yet seeded or device model not acknowledged
Dadurch darf man sich nicht beirren lassen, sondern den Befehl einfach nochmals aufführen, dann funktioniert er. Den Hintergrund habe ich nicht weiter erforscht. Vielleicht wird bei der Erstausführung von snap
erst noch eine interne Konfiguration vorgenommen.
Wir machen weiter mit:
snap refresh core |
Zertifikat erzeugen
Um unser Zertifikat zu bekommen, müssen wir jetzt zwei Voraussetzungen erfüllen:
- der Domainname, den wir zertifizieren wollen, muss auf unsere öffentliche IP-Adresse auflösbar sein
- der Rechner, auf dem wir uns befinden, muss von außen per HTTP (Port 80) erreichbar sein. Also auf einer Firewall oder einem Router ein entsprechendes Forwarding einrichten.
Zur Erzeugung des Zertifikates muss der Kerio-Connect Server beendet werden.
systemctl stop kerio-connect.service |
Anschließend starten wir die Zertifikats-Erzeugung
certbot certonly |
Saving debug log to /var/log/letsencrypt/letsencrypt.log
How would you like to authenticate with the ACME CA?
1: Spin up a temporary webserver (standalone)
2: Place files in webroot directory (webroot)
Select the appropriate number [1-2] then [enter] (press ‘c’ to cancel):
Wir wählen 1 und bestätigen mit Enter
Enter email address (used for urgent renewal and security notices)
(Enter ‘c’ to cancel):
Wir geben unsere Mailadresse admins@mydomain.de an und bestätigen mit Enter
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server. Do you agree?
(Y)es/(N)o:
Wir stimmen zu mit Y und bestätigen mit Enter.
Would you be willing, once your first certificate is successfully issued, to
share your email address with the Electronic Frontier Foundation, a founding
partner of the Let’s Encrypt project and the non-profit organization that
develops Certbot? We’d like to send you email about our work encrypting the web,
EFF news, campaigns, and ways to support digital freedom.
(Y)es/(N)o:
Zusätzliche Mails brauchen wir keine, deswegen N und bestätigen mit Enter.
Account registered.
Please enter in your domain name(s) (comma and/or space separated) (Enter ‘c’
to cancel): mail.mydomain.de
Wir geben die Domain unseres Mailservers ein mail.mydomain.de und bestätigen mit Enter.
Waiting for verification…
Cleaning up challengesIMPORTANT NOTES:
Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/mail.mydomain.de/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/mail.mydomain.de/privkey.pem
Your certificate will expire on 2021-05-06. To obtain a new or
tweaked version of this certificate in the future, simply run
certbot again. To non-interactively renew all of your
certificates, run “certbot renew”If you like Certbot, please consider supporting our work by:
Donating to ISRG / Let’s Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le
Perfekt! Damit ist unser Zertifikat erstellt worden.
Verheiraten des Zertifikats mit Kerio-Connect
Um dem Kerio unser LetsEncrypt-Zertifikat schmackhaft zu machen, nehmen wir ihm sein selbstsigniertes Zertifikat weg und verlinken auf unser LetsEncrypt-Zertifikat:
cd /opt/kerio/mailserver/sslcert |
Anschliessend müssen wir Kerio-Connect wieder starten.
systemctl start kerio-connect |
Wir überprüfen nochmals, ob das richtige Zertifikat angezogen wird:
Alles bestens. :-D
Achtung: Wenn das Zertifikat erneuert wird, ist es notwendig den Kerio-Connect neu zu starten.