Mit Pihole interne Domain nutzen und Lets-Encrypt

sakis2019

Cadet 4th Year
Registriert
Sep. 2019
Beiträge
86
Hallo zusammen,

ich habe auf meinem Raspberry Pi 4 Pihole installiert.
Nun möchte ich Intern und nur Intern meine gekaufte Domain nutzen.

Frage 1. Wie kann ich Pihole sagen das er die Domain nur intern verwenden soll.
Frage 2. Ich möchte per Nginx Proxy Manager (Docker-Container) interne Lets-Encrypt Zertifikate per DNS-Validierung erstellen und verwalten.

Hat da jemand eine Idee?

LG
Sakis
 
sakis2019 schrieb:
Frage 1. Wie kann ich Pihole sagen das er die Domain nur intern verwenden soll.
dienste nur auf 192.168.1.0/24 oder was auch immer dein internes netz ist lauschen lassen
sakis2019 schrieb:
Frage 2. Ich möchte per Nginx Proxy Manager (Docker-Container) interne Lets-Encrypt Zertifikate per DNS-Validierung erstellen und verwalten.
Warum Nginx Proxy Manager?
 
  • Gefällt mir
Reaktionen: Der Lord
madmax2010 schrieb:
dienste nur auf 192.168.1.0/24 oder was auch immer dein internes netz ist lauschen lassen
Ich möchte das nicht für jeden Dienst manuell eintragen müssen. Pihole läuft als DNS und DHCP Server, daher sollte eine bessere Lösung möglich sein.

madmax2010 schrieb:
Warum Nginx Proxy Manager?
Weil es eine grafische Oberfläche hat und man damit alles einfacher und besser verwalten kann.
 
Zuletzt bearbeitet:
sakis2019 schrieb:
Frage 1. Wie kann ich Pihole sagen das er die Domain nur intern verwenden soll.
Was genau meinst du damit? Solange dein pihole nicht von extern erreichbar ist - wovon auch deutlich abzuraten wäre - kann er nur von Teilnehmern in deinem lokalen Netzwerk genutzt werden.


Irgendwie ahne ich, dass es sich hier um ein XY-Problem handelt.


sakis2019 schrieb:
Nun möchte ich Intern und nur Intern meine gekaufte Domain nutzen.
Aha, das heißt du hast dir jetzt bei einem beliebigen Hoster sakis2019.irgendwas.de gebucht, willst diese Domain aber gar nicht öffentlich bedienen. Wozu buchst du sie dann? Man braucht keine höchstoffizielle gekaufte Domain, nur um sie lokal zu nutzen. Im eigenen Netzwerk kannst du auch direkt die lokalen Hostnamen deiner Geräte verwenden. Übliche lokale DNS-Suffixe wären beispielsweise .local oder auch .lan Diese quasi-Domain wird hinter jeden Hostnamen gehängt. Dein NAS, dessen Hostname "MeinNAS" lautet, wäre beispielsweise unter "MeinNAS.local" zu erreichen, aber auch unter "MeinNAS", weil der DNS-Suffix automatisch angehängt wird, wenn alles korrekt eingestellt ist.

Abgesehen davon kann man pihole auch benutzerdefinierte DNS-Einträge beibringen. Nichts anderes tut pihole ja sowieso, weil bla.full.of.ads.de schlicht und ergreifend hart codiert mit 0.0.0.0 aufgelöst wird, der blackhole-IP. In diesem Fall kommt der Eintrag aber aus einer der abonnierten Listen, während benutzerdefinierte Einträge über den Menüpunkt local DNS records konfiguriert werden.

Wie gesagt, muss das mitnichten eine offizielle Domain sein, da kann auch beliebiger Blödsinn stehen. Wichtig ist nur, dass eine öffentliche Webseite, o.ä. auf dieser Domain nicht mehr nutzbar wäre. Man sollte daher nicht unbedingt im lokalen Netzwerk "computerbase.de" für einen lokalen Eintrag nutzen, weil man sonst nicht mehr auf diese Webseite hier kommt. Genau deswegen sind die lokalen Domains, die DHCP-Server ausgeben, in der Regel .local bzw. .lan, weil es die im www nicht gibt und somit Überschneidungen ausgeschlossen sind.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Zerstoerer, andy_m4 und madmax2010
Ein Einwurf von der Seite: .local als interne Domain wird heutzutage nicht mehr empfohlen.
Ja, das war jahrelang in allen Microsoft Dokumentationen drin, aber inzwischen raet auch MS davon ab.

Denn .local wird fuer Multicast DNS verwendet, und kann wohl insbesondere bei Apple Produkten problematisch sein.
Es gibt nicht wirklich "schoene" TLDs fuer den Heimgebrauch.
Und wenn @sakis2019 intern gueltige Zertifikate haben will ohne an jedem betroffenen Geraet eigene Root Zertifikate importieren zu muessen, kommt er an einer oeffentlichen Domain nicht vorbei, denn Let's Encrypt wird dir fuer eine .local kein Zertifikat ausstellen.
 
  • Gefällt mir
Reaktionen: sakis2019, Raijin, andy_m4 und eine weitere Person
Ranayna schrieb:
Und wenn @sakis2019 intern gueltige Zertifikate haben will ohne an jedem betroffenen Geraet eigene Root Zertifikate importieren zu muessen, kommt er an einer oeffentlichen Domain nicht vorbei, denn Let's Encrypt wird dir fuer eine .local kein Zertifikat ausstellen.
Genau das ist der Punkt warum ich eine "echte Domain" haben möchte.

Ich nutze ja Pihole zusammen mit Unbound, eigentlich muss ich nur Unbound mitteilen das er die Domain example.com nicht öffentlich auflösen soll, sondern weiterleitet an den Nginx Proxy Manager, der dann für die Zertifikate zuständig ist.

  • Ich weiß nur nicht ob man dann noch DNS-Records für die jeweiligen subdomains im Pihole erstellen muss.
  • Ich nutze Unraid und die Docker sind alle mit statischer IP, muss das dann im Pihole auch die IP inkl. MAC eingetragen werden?
 
Es ändert aber nichts daran, dass es ein local DNS record ist. Die lokale Domain war ja nur ein Beispiel, aber du kannst da auch "öffentliche Domains" eintragen. Versuch es doch einfach.

Subdomains sind übrigens eigenständig. Prinzipiell ist alles eine Subdomain bis auf ... ... naja, die TopLevelDomains de, com, org, etc. Wenn du Subdomains verwendest, müssen sie alle einen eigenen Eintrag bekommen. Soweit ich weiß unterstützt pihole keine Wildcards, weil die Liste effektiv nur eine Eingabemaske für die /etc/hosts ist und da gibt's keine Wildcards.
 
Such dir nen DNS Anbieter aus der ne API hat ich bin zb. bei Digital Ocean (kostenlos) gibt aber auch genügend andere. Dann einfach bei deinem Domain Anbieter die DNS Server umstellen auf den DNS Anbieter.
Im NPM kannst dann den API Key eintragen womit automatisch dann immer dein Lets Encrypt Zertifikat ausgestellt wird und natürlich stell noch beim DNS Anbieter die subdomains auf deine internen IPs.

Mach ich genauso für mein Unraid nur das ich meine domain sowohl intern als auch extern nutze und für intern quasi *.local.domain.de nutze. Würde dir für NPM ein wildcard cert empfehlen falls du mehrere subdomains bzw. docker container via subdomain ansprechen willst.
 
  • Gefällt mir
Reaktionen: sakis2019
Ich bin bei Cloudflare und kann anhand der API-Token gültige Zertifikate erstellen. Das ist nicht das problem.

Verwendest du Pihole auch als DHCP-Dienst? Wenn ja, was hast du in Pihole unter Settings -> DHCP ->
Pi-hole domain name, eingetragen?

Verwendest du Unbound? Wenn ja, hast du da noch was geändert bzgl der Domain?
 
sakis2019 schrieb:
, eigentlich muss ich nur Unbound mitteilen das er die Domain example.com nicht öffentlich auflösen soll, sondern weiterleitet an den Nginx Proxy Manager
Dann mach das doch.

sakis2019 schrieb:
Ich weiß nur nicht ob man dann noch DNS-Records für die jeweiligen subdomains im Pihole erstellen muss.
Eher nicht. unbound ist doch der Server den Du fragst. Der ist "chained" verbunden mit dem Pi-Hole DNS-Server. Es gibt keinen Grund warum der etwas über Deine Domains wissen muss, da ihn Anfragen diesbezüglich eh nicht erreichen.

sakis2019 schrieb:
Ich nutze Unraid und die Docker sind alle mit statischer IP, muss das dann im Pihole auch die IP inkl. MAC eingetragen werden?
Ähm nein. Wenn Du Deine eigene Domain via unbound auflöst, dann müssen die IP-Adressen auch in unbound eingepflegt werden und nicht in Pi-Hole.
 
also ich benutze das ned aber ich glaube was du meinst bei dhcp kannst be idomain eintragen was du wilslt das müsste der suffix sein der dann z.b. wenn du ping server eingibst und bei domain im dhcp hast du meinedomain.de eingetragen macht er nix weiter als das er bei der namens Auflösung auch server.meinedomain.de macht (vereinfacht ausgedückt).

Unbound soll bei dir als resolver fungieren und quasi deine DNS anfragen weiterleiten und auflösen. Wenn du deine eigene Domain dort einträgst dann hast du quasi ein split horizon Szenario. Von außen aus dem internet oder besser gesagt alle devices die nicht deinen unbound DNS-Server verwenden lösen was anderes auf (Cloudflare Einträge) als deine clients die den unbound dienst verwenden.
 
Eigentlich wird das hier ganz gut erklärt und das ist genau das was ich machen möchte.
Soweit verstehe ich alles, bis zum Punkt "Setting Local DNS Records" Im Tutorial nutzt er dnsmasq, ich habe aber unbound.

Und da weiß hänge ich grad.
 
Wofür willst du unbound benutzen? Du kannst doch deine domain / subdomains doch auch via cloudflare setzen. WEn ndu unbound nutzt musste das halt auch machen. deine domain,de und dann machste halt keine Ahnung npm.domain.de und zeigst auf die ip vom npm container
 
wizzi schrieb:
Wofür willst du unbound benutzen? Du kannst doch deine domain / subdomains doch auch via cloudflare setzen.
Wie soll das gehen? ich möchte die lokalen Services nicht online nutzen? Oder was genau meinst du?
 
du willst doch daheim in deinem browser npm.domain.de eingeben und auf die weboberfläche von deinem Nginx Proxy Manager kommen oder halt pihole.domain.de für pihole dafür willst doch Zertifikate damit du die Sachen via SSL absicherst? Also brauchst du doch den A Record npm.domain.de etc das dann auf deine lokale IP zeigt oder verstehe ich da was falsch?
 
wizzi schrieb:
du willst doch daheim in deinem browser npm.domain.de eingeben und auf die weboberfläche von deinem Nginx Proxy Manager kommen oder halt pihole.domain.de für pihole dafür willst doch Zertifikate damit du die Sachen via SSL absicherst? Also brauchst du doch den A Record npm.domain.de etc das dann auf deine lokale IP zeigt oder verstehe ich da was falsch?
Das ist soweit richtig, aber einen A-Record bei Cloudflare setzt man nur wenn man von "außen" auf die "internen" Dienste zugreifen möchte (nachdem man die jeweiligen Ports im Router freigegeben hat). Das möchte ich nicht, weder Ports freigeben noch von "außen" darauf zugreifen.

Ich möchte die meine Dienste, die im Unraid laufen, vom heimnetz also nur intern darauf zugreifen und zwar mit "example.de", also z.b. pihole.example.de oder plex.example.de und das mit einen gültigen zertifikat von Letsencrypt.

Den "A-Record" muss ich also irgendwie, irgendwo in Pihole bzw. dnsmasq bzw. unbound setzen bzw. das weiß ich nicht.
 
Das is bums da du eh auf ne interne IP zeigst und man von außen nicht drauf zugreifen kann. Du kannst ja auch unbound nutzen und da halt deine domain und dann deine A Records reinmachen.
 
wizzi schrieb:
...Du kannst ja auch unbound nutzen und da halt deine domain und dann deine A Records reinmachen.
Das möchte ich ja die ganze Zeit. Wenn du mir jetzt noch sagst wo und wie ich das mache dann kann dieser Thread geschlossen werden. :)
 
Wie gesagt benutze einfach Cloudflare das is das einfachste und nicht unsicher.
Ansonsten musste ne primäre domain/zone anlegen dann musst du den forwarder einrichten und die upstream dns server bestimmen gibt es bei unbound keine Weboberfläche?
 
Zurück
Oben