Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[ANLEITUNG] SSL-Zertifikate via Lets Encrypt im HomeLab ohne öffentlich erreichbar zu sein

Featured Replies

Ich habe lange damit gekämpft, SSL-Zertifikate in meinem HomeLab zum Laufen zu bringen. Selbstsignierte Zertifikate sind zwar möglich, verursachen aber oft Probleme und einen hohen Aufwand – daher habe ich sie nicht genutzt.

Wichtig: Ich öffne keine Ports meines HomeLabs nach außen. Externer Zugriff erfolgt bei Bedarf ausschließlich über VPN.

Im Folgenden beschreibe ich, wie ich die Lösung umgesetzt habe.
Hinweis: Es gibt keine Screenshots, daher ist ein wenig Transferleistung erforderlich.


Voraussetzungen

  1. Echte Domain

    • Ohne Domain funktioniert die Lösung nicht.

    • Ich nutze ein Angebot von Netcup: 1,30 € pro Jahr für eine .de-Domain (normal ca. 5 €).

    • Die Anleitung orientiert sich an Netcup, die Vorgehensweise ist aber ähnlich bei anderen Anbietern.

  2. Kostenloser Cloudflare-Account

  3. NGINX Proxy Manager (NPM)

    • Andere Proxy-Lösungen habe ich nicht getestet.

  4. AdGuard Home

    • Alternativ kann Pi-hole verwendet werden, dient der DNS-Umschreibung im Netzwerk.


Schritt 1: Domain zu Cloudflare umziehen

  1. Domain in Cloudflare hinzufügen (Anleitung bei Cloudflare verfügbar).

  2. Im Netcup Control Center (CCP) unter Domains → DNS alle bisherigen Einträge löschen, da künftig Cloudflare die Verwaltung übernimmt.

  3. Die Cloudflare Nameserver in Netcup eintragen.

  4. Nach kurzer Zeit sollte die Domain im Cloudflare-Account sichtbar sein.


Schritt 2: Cloudflare API-Key erstellen

  • Ein API-Key wird benötigt, damit NGINX Proxy Manager die DNS-Einträge der Domain verwalten kann.

  • Die Erstellung eines API-Keys ist online ausreichend dokumentiert.


Schritt 3: SSL-Zertifikat im NGINX Proxy Manager einrichten

  1. Voraussetzung: NPM muss eine eigene IP im Netzwerk besitzen.

  2. In NPM auf Certificates → Add Certificates → Let's Encrypt via DNS.

  3. Konfiguration:

    • Domain: *.deinedomain.tld (Wildcard für alle Subdomains)

    • Key Type: RSA 2048 (alternativ wird auch ECDSA unterstützt)

    • DNS Provider: Cloudflare

    • API Key: Einfügen → Save

  4. Nach kurzer Zeit sollte das Zertifikat erstellt sein.


Schritt 4: DNS-Umschreibung mit AdGuard Home

  1. In AdGuard Home unter Filter → DNS-Umschreibung folgende Einträge hinzufügen:

    • Domain: *.deinedomain.tld

    • Ziel-IP: IP des NPM


Schritt 5: Dienste über NPM bereitstellen

  • Ab jetzt können im NPM unter Hosts → Proxy Hosts beliebige Subdomains eingerichtet und auf interne Dienste weitergeleitet werden.

  • Das Wildcard-Zertifikat wird dabei als SSL-Zertifikat genutzt.


Ergebnis

Mit dieser Lösung laufen bei mir z. B. Vaultwarden und Nextcloud ohne Probleme über HTTPS – ohne Zertifikatsfehler oder zusätzlichen Aufwand.
Außerdem erneuert NPM die Zertifikate automatsch für euch vor Ablauf erneut via DNS Challenge.


Zusatzinfo: NPM in andere Docker-Netzwerke einbinden

NGINX Proxy Manager kann über die „Extra Parameters“ in andere Docker-Netzwerke eingebunden werden.

  • Dadurch lassen sich alle Dienste, die in denselben Docker-Netzwerken laufen, direkt über den Container-Namen im NPM ansprechen.

  • Die eingerichteten Domains können so über NPM auf die internen Container weitergeleitet werden.

Vorteil:

  • Spart IP-Adressen im Heimnetzwerk, die sonst benötigt würden.

Ich hoffe ich konnte dem ein oder anderen damit helfen :)

Greetz....

Den Umweg über Cloudflare würde ich nur machen wenn der Domain Anbieter keine DNS Challenge unterstützt.

Als kostenlose Alternative geht eine dyndns Domain wie duckdns oder ipv64, dort ist kein Cloudflare nötig.

Ansonsten wenn euch ein lokales Zertifikat reicht dann könnte euch der Guide helfen:

Lokale Zertifikate haben jedoch einen Nachteil, ihr müsst sie auf eure Endgeräte aufspielen können. Bei Geräten wie einem FireTV Stick oder ähnlichen könnte das schwierig werden. Da ist der Weg über eine Domain oder DynDNS die bessere Wahl.

Edited by Pixelz_Namikaze

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.