ich möchte versuchen eine SSL / HTTPS Verbindung zu Nextcloud aufzubauen ohne, dass ich eine Domain über die WAN Schnittstelle nutzen muss. Also nur im im lokalen Netzwerk.
Ich finde bislang nur Lösungen, wo ich über eine Portweiterleitung im Router (Unifi UDM Pro) und einer externen Domain dies ermöglich kann. Das muss doch irgendwie lokal funktionieren, da ich es auch nur dort erreichen muss.
Ich habe folgendes versucht:
Auf meinem Unraid Server habe ich den Docker Nextcloud sowie Nginx Proxy Manager (NPM) am laufen. Beide hosten über eine eigene IP.
Nun habe ich für den NPM ein Local DNS Record eingerichtet:
Wie man Sieht mit Internal Error.
Log vom Docker:
[10/19/2023] [12:18:25 AM] [Express ] › warning Command failed: certbot certonly --config “/etc/letsencrypt.ini” --work-dir “/tmp/letsencrypt-lib” --logs-dir “/tmp/letsencrypt-log” --cert-name “npm-9” --agree-tos --authenticator webroot --email “xxxxx@gmail.com” --preferred-challenges “dns,http” --domains “nextcloud.npmtest.com”
Denke ich mir das zu einfach? Einen Pi Hole dafür wollte ich jetzt nicht unbedingt nur dafür realisieren.
Es sind meine ersten versuche und betreibe noch keine sensiblen Dokumente auf dem Server. Ich möchte es aber verstehen und realisieren. Über eure Hilfe würde ich mich sehr freuen.
Ich habe jetzt nochmal versucht, die Ports 80 und 443 in der UDM Pro weiterzuleiten. Aber auch hier die gleiche Fehlermeldung / Warnung. Ich verstehe nicht wo das Problem ist
so wie ich das sehe hast du 2 unterschiedliche Probleme
der NPM kann keine Zertifikat erstellen
der Server soll intern erreicht werden
Du solltest diese Probleme nacheinander angehen. Für das Problem 1. musst du
einen validen öffentlichen DNS Namen besorgen (DynDNS auch OK) - weil letencrypt wie alle öffentlichen CAs Zertifikate nur für gültige DNS Namen erstellt
den DNS record auf die public IP deiner Routers konfigureren
im Router Port Forwarding für 80 und 443 zum NPM konfigurieren
Sobald dein System ein gültiges Zertifikat hat und (extern) mit https erreichbar ist, kannst du Problem 2. angehen indem du im internen Netz ein DNS mit der lokalen IP des NPM konfigurierst (mit Pi-Hole oder wie auch immer).
BTW: wenn du im NPM screenshot deine Email publizierst brauchst du sie im docker log nicht auszublenden
Vielen Dank für die Erläuterungen. Die Infos haben mir noch gefehlt um zu verstehen, dass mein Vorhaben so nicht funktioniert. Ich habe eine ipv64 domain angelegt um per Wireguard in mein Netzwerk zu gelangen. In erster Linie reichte das für mich und alles weitere wollte ich Lokal lösen. Da Nextcloud aber ein Problem damit hat, wenn keine https Verbindung besteht hatte ich eben über so eine Lösung nachgedacht. Aber anscheinend komme ich nicht drumherum eine Subdomain bei ipv64 anzulegen und das per NPM zum Nextcloud zu routen.
Verliere ich denn so ein Stück Sicherheit, mit der Portweiterleitung? Nun gut ich könnte dann noch IP Block/Allow Listen erstellen. Ich bin für jeden Hinweis dankbar und auch über negative Kritik mit Verbesserungsvorschlägen.