[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).

1 „Gefällt mir“

@demel42 Herzlichen Dank für das CertWarden Gateway Modul. In Kombination mit meiner CertWarden-Docker-Installation ist es für mich die ideale Brücke zu Symcon.

Ich kann Zertifikate jetzt ohne technische Schwierigkeiten über ACME in CertWarden erstellen und verwalten. Das CertWarden Gateway übernimmt anschließend zuverlässig die Synchronisation beziehungsweise das Update in Symcon.

Zusätzlich setze ich noch Portainer sowie das Portainer Modul von @Nall-chan ein. Dadurch kann ich über ein Skript im CertWarden Gateway meinen Docker-Container mit Hilfe von Portainer automatisch neu starten, sobald ein neues Zertifikat vorliegt. Die komplette Zertifikats Kette ist jetzt voll automatisiert

Nochmals herzlichen Dank an die Entwickler der Module.

1 „Gefällt mir“

Ich habe gerade über Cert Warden mein Zertifikat erneuert und erhalte diese Fehlermeldung wenn ich die Webserver Instanz öffnen will :
Es gab einen nicht abgefangenen Fehler. Bitte kontaktieren Sie Symcon mit der folgenden Fehlermeldung und einer Beschreibung, wie Sie den Fehler ausgelöst haben

TypeError: Cannot read properties of null (reading ‚openInstanceEditor‘)
at a6._openObject (http://192.168.0.XXX:3777/console/src/console-app.js:11101:52287)
at Object.onLeftDoubleClick (http://192.168.0.XXX:3777/console/src/console-app.js:11101:28708)
at CX._clickHandler (http://192.168.0.XXX:3777/console/src/console-app.js:6357:14958)
at i.onclick (http://192.168.0.XXX:3777/console/src/console-app.js:6357:30894)

Hat sich erledigt, Ich musste die Pro Console neu starten

Ich lasse das Posting mal stehen so das Symcon sich den Fehler anschauen kann

1 „Gefällt mir“