NEWS
HTTPS + Let's encrypt im LAN
-
Hallo zusammen
Gibt es eine Möglichkeit HTTPS samt Let's encrypt im LAN zu aktivieren, wenn man nicht gewillt ist Ports im Router zu öffnen?
Ich nutze einen VPN, möchte aber im LAN die sichere Verbindung, da sich viele Familienmitglieder und Freunde (hin und wieder) im WLAN aufhalten.
Danke. Gruß
Tobias
-
Hi,
mittlerweile gibt es schon einige dieser Themen. Dein Vorhaben widerspricht sich ein wenig. Du gehst per VPN ins Heimnetz (was gut ist), möchtest im LAN dann ein SSL Zertifikat (was auch ok ist). Nur Let's Crypt ist eher für öffentliche Webseiten. Du kannst zwar auch einen Dyndns Namen damit zertifizieren aber du gehst ja eh per VPN rein, sprichst den Iobroker also über die lokale IP-Adresse an. Die Clients im WLAN dann ja auch.
Ich gehe auch über VPN ins Heimnetz über eine Sophos XG Firewall, die wiederum eigene SSL Zertifikate hat, die lasse ich auch so, da nur für OpenVPN relevant. Intern habe ich es so gelöst, dass ich eine eigene Root CA (Certificate Autority) erstellt habe, die sich selbst signiert hat (ich vertraue mir selbst ja, hoffe ich :D) und die dann für den iobroker ein Zertifikat ausgestellt hat. Im Browser habe ich dann das Root-CA Zertifikat installiert und dieser vertraut dann dem Clientzertifikat, da er ja der Root-CA vertraut.
Die Besonderheit bei mir ist noch, dass der ioBroker auf meinem QNAP Nas läuft im Docker und als Hostnamen auch den des NAS hat.
Sieht dann so aus:
Das Ganze habe ich anhand dieser Anleitung erstellt https://nightsi.de/ssl-zertifikat-generieren
Läuft bei mir wie gesagt im Docker, kann man aber auch mit auf einen Raspi packen denke ich.
Im Prinzip müssten das die Schritte gewesen sein:
1 sudo apt-get install openssl #OpenSSL installieren 2 openssl genrsa -out root-ca.key 4096 -des3 #Root-CA Key erzeugen mit 4096 Bit 3 openssl req -x509 -new -nodes -key root-ca.key -days 720 -out root-ca.crt #Root-CA anlegen, 720 Tage sind dafür vllt. etwas wenig, ich habe 10 Jahre 4 openssl req -new -key MeinZertifikat.key -out MeinZertifikat.csr #Zertifikatsrequest erzeugen, wichtig bei den dann kommenden Fragen ist der Common Name, der muss heißen wie die Seite aufgerufen wird! -> bei mir https://nas01:8081 also ist der common name nas01 5 openssl x509 -req -in MeinZertifikat.csr -CA root-ca.crt -CAkey root-ca.key -CAcreateserial -out MeinZertifikat.crt -days 720 #Zertifikat für die Zielseite ausstellen / signieren.
6 Zertifikat im ioBroker einbinden: Aus den MeinZertifikat.key und .crt Dateien (öffnen mit Texteditor) holt man die Zertifikatsinformationen raus (alles kopieren) und dann hier im ioBroker austauschen.
7 Zuletzt musst du noch das erstellte root-ca.crt Zertifikat im Browser in die Zertifizierungsstellen aufnehmen. Das geht im Firefox über Einstellungen, Datenschutz & Sicherheit, Zertifikate, Zertifikate anzeigen, Zertifizierungsstellen, importieren -> vertrauen für Webseiten.
Das klingt alles erst einmal viel aber ich war nach ein paar Minuten fertig, sind nur ein paar Befehle.
-
Danke für deine Antwort. Jetzt muss ich nur gucken, wie ich das Zertifikat bei Chrome auf meinen Android Geräten hinzufüge.