[Modul] CertWarden (für Let's Encrypt)

Es gibt nun ein Modul zur Nutzung von Zertifikaten, die ein Cert Warden Server bereitstellt.

  1. Voraussetzungen
    IP-Symcon ab Version 6.0 und ein CertWarden-Server mit gültigen Zertifikaten

  2. Enthaltene Module
    CertWarden

  3. Installation
    Über den Module Store!
    Zur Zeit noch Beta, also direkt nach CertWarden suchen.

  4. Dokumentation
    siehe IPSymconCertWarden

Es werden zyklisch das konfigurierte Zertifikat (für Symcon) von dem CertWarden-Server geholt und bei Änderung des Zertifikats in dem angegebenen Webserver hinterlegt.

Achtung: Symcon muss weiterhin manuell neu gestartet werden, da gibt es keine Möglichkeit. Da aber von CertWarden die Zertifikate frühzeitig erneuert werden, hab man genug Zeit, das zu machen - solange man nicht neu gestartet hat, ist das alte Zertifikat ja noch aktiv.

Hintergrund:

Die Absicherung von Web-Aufrufen via HTTPS ist ja immer wichtiger. Auch wenn der Sicherheitsgedanke in einem privaten Heim-Netzwerk ohne einen Zugriff aus dem Internet nicht ganz so kritische ist wie in Firmen-Netzwerken, gibt es immer wieder Situationen, wo die Mischung Probleme macht: aktuelle Browser verbieten den Zugriff via HTTPS und darüber Zugriff auf HTTP (Zugriff in der Symcon-App via Symcon-Connect und dann intern HTTP).

Nun gibt es mit Let’s Encrypt ja die Möglichkeit, kostenlos gültige Zertifikate zu erzeugen. Nachteil ist dabei die kurze Gültigkeit (30 bzw. 90 Tage) und im Standard-Vorgehen währende der Zertifikat-Erneuerung eine Erreichbarkeit des lokalen Servers via Port 80 (HTTP) vom Let’s Encrypt-Server.

Zudem gibt es Probleme bei der Ausstellung von Zertifikaten für interne Domains.

Für die automatische Zertifikat-Erneuerung gibt es zwar Unterstützung via ACME, es bleibt aber bei einer nicht unkomplexen Konfiguration und Skripten.

Hier hilft Cert Warden, das eine recht gut verständliche WEB-GUI für die Handhabung von LetsEncrypt und ACME zur Verfügung stellt - natürlich muss man sich etwas mit Zertifikaten beschäftigen, man muss aber erheblich weniger wissen als bei einer eigenen Implementierung.

Zudem bietet er auch die volle Unterstützung von ACME unter anderem mit dns-01-challenge; erwähnenswert ist (dns-01 go-acme le-go | Cert Warden) sind eine Unzahl von DNS-Provider beschrieben (DNS Providers :: Let’s Encrypt client and ACME library written in Go.) und deren spezifische Konfiguration.

Zertifikate werden automatisch (sehr) frühzeitig erneuert.

Wildcard-Zertifikate (*.<meinedomain>) sind möglich.

Certwarden bietet zudem eine HTTP-API an, um Zertifikate von Certwarden-Server abzurufen um sie zu nutzen (das nutzt das Modul) sowie eine Reihe von Beispiel-Skripten zur Nutzung auf eigenen Servern.

Certwarden wird vorzugsweise unter Docker betrieben, kann aber auch auf Linux und WIndows (Installing | Cert Warden).