Ab sofort verwende ich für alle Serverdienste (Web, E-Mail, XMPP etc.) TLS-Zertifikate von Let’s Encrypt.
Dabei handelt es sich nicht um eine Zertifizierungsstelle (CA) im klassischen Sinn, sondern um eine Initiative, die ursprünglich von Mozilla, der EFF und der Universität von Michigan gegründet wurde und mittlerweile von der Internet Security Research Group (ISRG) angeboten wird. Das Ziel von Let’s Encrypt ist es, Verschlüsselung von Websites überall zu ermöglichen, indem man die nötigen Zertifikate kostenlos herausgibt. Seit April 2016 ist Let’s Encrypt nicht mehr länger Beta, sondern ganz offiziell in Betrieb.
Um Let’s Encrypt nutzen zu können, ist ein Client erforderlich, der die Zertifikate regelmäßig über das „ACME“-Protokoll erneuert, da ein ausgestelltes Zertifikat nur für drei Monate gültig ist. Ich nutze dafür das Shell-Script getssl, mit dem der Ablauf einfach automatisiert werden kann. Dieses Script wird per cron-Job täglich aufgerufen, überprüft das Alter der Zertifikate und erneuert sie bei Bedarf. Es sorgt auch dafür, dass betroffene Dienste ihre Konfiguration neu laden oder neu gestartet werden, wenn nötig.