- Official Post
Moin,
jetzt bin ich genug genervt und kümmere mich mal drum, dass ich all meine lokalen services ohne die nervige Warnung Zertifkat nicht gültig (self signed) WARNUNG wollen so weitermachen nutzen kann.
Dazu braucht es
- Einen DNS server der per API DNS Challenge nutzbar ist - ich nutze Cloudflare man kann aber auch seinen IONOS service oder duckdns oder andere nutzen.
- NGINX-Proxy welches Letsencrypt mitbringt
Das ganze lassen wir auf eine Ubuntu 24 VM mit docker laufen. Dazu die hier notwendigen Schritte
1. Ubuntu 24 server minimal mit SSH service installieren (das beschreibe ich nicht
2. Docker runtime installieren: https://docs.docker.com/engine/install/ubuntu/ (ich nutze die Methode mit apt repo)
3. nginx proxy installieren (https://nginxproxymanager.com/guide/#quick-setup), sprich docker.compose.yml erzeugen und mit docker compose pull laden und dann mit docker compose up -d starten. Kann man auch mit nur up -d machen, aber ich lade die Images gerne erstaml getrennt um zu sehen ob das klappt.
zum Check docker ps -a aufrufen und Ihr solltet so etwas wie
root@lx-nginxproxy:~# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b141124c8bd4 jc21/nginx-proxy-manager:latest "/init" 13 seconds ago Up 13 seconds 0.0.0.0:80-81->80-81/tcp, :::80-81->80-81/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp root-app-1
bekommen. Sieht gut aus, wenn man nun die IPadresse:81 aufruft kommt
Supi NGINX läuft. Der default admin sollte Email: [email protected] Password: changeme sein. Damit logged Ihr Euch ein und ändert erstaml den admin. Danach solltet Ohr folgendes sehen:
natürlich mit Euren Daten.
Nun könnte Ihr Euer erstes Zertifkat erstellen
nimmt *.Euredomäne und bei Cloudflare das API TOKEN eingeben (nicht zone id oder ähnliches). 120s für propagation sollte OK sein.
währen Letsecrypt arebeitet seht Ihr auf Cloudflare den entsprechenden Prüfeintrag um zu checken ob die Domain wirklich Euch gehört.
Der verschwindet nach 2 minuten automatisch wieder. Ist alles gut gelaufen habt Ihr folgendes
natürlich mit Eurer Domaine. Nun könnt Ihr anfangen Eure hosts / services eintragen.
Ach ja damit dass ganze funktioniert muss nat. im DNS server der nginx proxy als IP für die subdomain eingetragen sein und zusätzlich alle hosts drunter (*) müssen auf den proxy zeigen. So werden dann alle entsprechenden requests an nginx gesendet und der sendet dann weiter an die richtige IP.
Fall Ihr einen eigenen DNS server nutzt der evt. wieder aus dem Netz die DNS Daten holt müsste Ihr evtl. rebind für Euer netz erlauben.
QuoteThese are addresses on your private network, and are not allowed to be returned for public internet names. Any occurrence of such addresses are removed from DNS answers. Additionally, the DNSSEC validator may mark the answers bogus. This protects against so-called DNS Rebinding. (Only applicable when DNS rebind check is enabled in System->Settings->Administration)
Das obige wurde angeregt durch diese beiden Videos