SSL Zertifikate für dein Homelab! | Nginx Proxy Manager | Homelab 002

แชร์
ฝัง
  • เผยแพร่เมื่อ 27 ต.ค. 2024

ความคิดเห็น • 46

  • @Manfred-hv8og
    @Manfred-hv8og 3 ชั่วโมงที่ผ่านมา +1

    Tolles Video, könnte mir echt weiterhelfen aktuell allerdings stolpere ich gerade bei Cloudflare (wie andere wohl auch). Was genau muss ich da im vorfeld aktivieren bzw. einstellen.
    Wäre super wenn du vielleicht noch einen Part 2 rausbringen könntest indem du die vorrausgehenden schritte beleuchtest. Abbo hast du jetzt schon ;)

    • @officialjusec
      @officialjusec  ชั่วโมงที่ผ่านมา +1

      Vielen dank für dein Feedback!
      Welche Schritte davor meinst du genau? Davor müsste maximal, wenn noch nicht geschehen, die Domain auf die Cloudflare-Nameserver umgestellt werden.
      An welchem Punkt hängst du genau fest?

    • @Manfred-hv8og
      @Manfred-hv8og ชั่วโมงที่ผ่านมา

      @@officialjusec du hast ja bereits eine Domain bei cloudflare hinterlegt, dieser Schritt erschließt sich mir nicht. Weder für die notwendigkeit noch wie ich dies bewerkstelligen soll.
      Zusammenfassend bin ich vor und nach Cloudflare mitgekommen, bei cloudflare hast du mich aber irgendwie abgehängt.

    • @officialjusec
      @officialjusec  34 นาทีที่ผ่านมา

      Ich nutze in diesem Fall Cloudflare für die Verwaltung der DNS Einträge meiner Domain. Dafür habe ich Bei Cloudflare gesagt, ich möchte gerne die Domain hinzufügen. Anschließend erhälst du von Cloudflare dann 2 Nameserver die du bei deinem eigentlichen Domain Provider für die Domain hinterlegen sollst. Wenn du das machst dauert es eine Weile und anschließend kannst du die DNS Einträge über Cloudflare verwalten statt deinem eigentlichen Provider (das muss man nicht unbedingt machen, ich mag aber die API Berechtigungen bei Cloudflare).
      Danach habe ich dann wie in dem Video zusehen einen API-Key für die DNS Verwaltung der Domain erstellt. Den brauchen wir um diesen dann beim Nginx Proxy Manager zu hinterlegen für die DNS-Challange, um das Zertifikat darüber zu erhalten.
      Wenn du nun in Nginx das Zertifikat anfragst, legt der Nginx Proxy Manager mit dem API Key einen temporären DNS-Eintrag für deine Domain an und dann prüft let´s encrypt diesen. Damit bestätigst du quasi, dass du besistzer der domain bist. Wenn das durch ist, löscht Nginx den Eintrag wieder mit dem API Key und du erhälst das Zertifikat im Proxy Manager.
      Das ist quasi das, was ich in dem Fall mit Cloudflare mache. Man kann das aber, insofern dein Domain provider ebenfalls eine API Schnittstelle hat, das ganze auch über andere Provider machen.
      Ich hoffe das war halbwegs aufklärend?

  • @5ergius
    @5ergius 3 หลายเดือนก่อน +3

    Jusec, neues Video. Möge der Algorithmus dir gnädig sein 👍

    • @officialjusec
      @officialjusec  3 หลายเดือนก่อน

      Hoffen wir das beste!😄

  • @matzemuster9172
    @matzemuster9172 3 หลายเดือนก่อน +1

    Sehr gut erklärt, vielen dank für das Video.

    • @officialjusec
      @officialjusec  3 หลายเดือนก่อน

      Vielen dank für dein Feedback! Freut mich sehr, dass dir das Video gefallen hat!☺️

  • @cradi01
    @cradi01 15 วันที่ผ่านมา +1

    Hallo, vielen Dank für das Video und die ganze Serie. Das ist alles sehr vielversprechend, und genau das, was ich aktuell auch versuche umzusetzen.
    Ich habe eine Frage zum Thema Cloudflare. Das beschäftigt mich schon eine Weile, aber ich verstehe es nicht wirklich. Kannst Du dazu vielleicht in Zukunft mal ein Erklärvideo machen?
    Reicht für das hier beschriebene ein "Free" Account bei Cloudflare?

    • @officialjusec
      @officialjusec  14 วันที่ผ่านมา

      Vielen Dank für deine positiven Worte! Freut mich sehr, dass dir die Serie gefällt! 😊
      In dem Video nutze ich Cloudflare nur für die DNS Verwaltung der genutzten Domain. Sprich, ich habe die Nameserver der Domain auf Cloudflare geändert und nehme meine Einträge dort vor, statt bei dem Provider wo ich die Domain erworben habe. Das ganze kann problemlos mit dem Free Account gemacht werden.
      Prinzipiell hat Cloudflare viele verschiedene Funktionen für verschiedene Anwendungsfälle. Gibt es hier etwas, was dich besonders interessiert?

    • @cradi01
      @cradi01 14 วันที่ผ่านมา

      @@officialjusec super Danke, hat soweit bei mir auch alles geklappt.

  • @stefankaiser2180
    @stefankaiser2180 9 วันที่ผ่านมา +1

    Vielen Dank für das Video. Super erklärt.👍
    Frage: Kann ich verhindern das man mit Hilfe der IP Adresse und dem Port auf die Nginx Admin Oberfläche kommt?
    Bei mir ist das zu mindestens möglich .

    • @officialjusec
      @officialjusec  9 วันที่ผ่านมา

      Danke für das Feedback! 😊
      jenachdem wie dein Heimnetz aufgestellt ist, wäre der einfachste Weg bspw. per Firewall mit einer entsprechenden Regel die nur das Netz XY zu Port 81 lässt.
      ansonsten schau dir den Beitrag hier mal an: github.com/NginxProxyManager/nginx-proxy-manager/issues/722
      Dort wird auch auf einen anderen Beitrag verlinkt, wie du in Docker den zugriff auf IP-Ranges anpassen kannst: stackoverflow.com/questions/7423309/iptables-block-access-to-port-8000-except-from-ip-address
      Falls dir das nicht weiterhilft, gib mir gerne nochmal eine Rückmeldung.

  • @almighty2374
    @almighty2374 11 วันที่ผ่านมา +1

    Kannst du bitte erklären, warum du die Cloudflare-Records und die Router-Einstellungen nicht im Detail erklärst? Ich verwende eine Proxmox mit einer einer OPNsense-Firewall, ich habe auch dein Adguard Tutorial nachgemacht und bei mir werden die Seiten am Anfang weitergeleitet, bleiben dann jedoch in einer Endlosschleife und sind nicht erreichbar. Gibt es bestimmte Einstellungen, die ich anpassen sollte, um das zu beheben?”

    • @officialjusec
      @officialjusec  11 วันที่ผ่านมา

      Siehst du die Seiten am Anfang bzw. zu irgend einer Zeit oder laden diese immer?
      Wenn sie dauerhaft laden und nicht aufgehen, wäre meine erste Vermutung, dass der Server auf dem der Proxy Manager läuft nicht die Server & Ports dort erreichen kann wo die Services laufen die du öffnen möchtest. Ggf. Musst du dafür noch Regeln in deiner opnsense hinterlegen, wenn die Geräte nicht im selben Netz sind.
      Sprich: dein Client muss zum Proxy Manager kommen können auf Port 80&443 und der Proxy Manager muss, wenn die Services auf anderen Geräten laufen, diese erreichen können an den entsprechenden Ports etc.

  • @peterta
    @peterta 19 วันที่ผ่านมา +1

    Tolle Beschreibung, wird im Homelab eine feste IP Adresse verwendet oder cgnat?

    • @officialjusec
      @officialjusec  18 วันที่ผ่านมา

      Vielen Dank für dein Feedback! 😊
      Das Homelab befindet sich hinter einem cgnat. Um aber trotzdem ein gültiges Let‘s Encrypt Zertifikat für das lab zu bekommen wird das Zertifikat mittels DNS-Challenge erstellt.😊

  • @Thomas-kw4sr
    @Thomas-kw4sr 20 วันที่ผ่านมา +1

    Hi. Justin,
    Vielen Dank für das sehr gute Video.
    Was mache ich, wenn zwei Docker Container auf den gleichen Ports lauschen?
    Zum Beispiel Stirling PDF (8080) und Nextcloud (8080).
    Gruss,
    Thomas

    • @officialjusec
      @officialjusec  20 วันที่ผ่านมา

      Vielen Dank für dein Feedback!
      Wenn du die Container jeweils über den Proxy Manager erreichen willst, ist es tatsächlich egal. In dem Fall wo du dem Container das "reverse-proxy" Netzwerk angibst reden diese über dieses mit dem Proxy Manager Container. Dabei können beide über die selben Ports erreichbar sein, da das dann nicht mehr der dedizierte Port von dem Host ist sondern der Container an sich in dem reverse-proxy Netzwerk. Probier es gerne einfach mal aus.
      Falls du einfach so zwei Container hast die den selben Port benötigen, ist es meistens aber auch kein Problem einen anderen Port nach draußen zu exposen (für die Anwendungen bleibt es der gleiche)

  • @biernot4071
    @biernot4071 16 วันที่ผ่านมา +1

    Hallo,
    ich benötige für meinen Server mehrere Ports 443 und z.B. den Port 80.. Wie kann ich mehrere Ports mit dem gleichen Zertifikat verwenden ?

    • @officialjusec
      @officialjusec  16 วันที่ผ่านมา

      Hi und vielen Dank für deinen Kommentar.
      Benötigst du das für verschiedene Docker-Container auf dem Host? dann kannst du einfach nach der Anleitung gehen. Da die einzelnen Container in einem gesammelten Netzwerk sind, können diese bspw. alle Port 80 verwenden.
      Wenn du auf dem Server selber meinst, das funktioniert so nicht. Du hast auf dem Server den Proxy Manager, welcher von außen der Service ist, der auf Port 80 und 443 hört. Das einzige was du jetzt machen könntest, wäre den anderen Services auf dem Server andere Ports zu geben. Dann kannst du im Proxy Manager verschiedene Einträge mit den verschiedenen Ports erstellen. Ports auf einem Server mehrmals verwenden, funktioniert nicht.
      Was ist dein genauer Aufbaue? also was genau willst du erreichen? Das mal als Frage, damit ich das Setup besser verstehe und vielleicht noch Ideen beitragen kann.

  • @knotingo
    @knotingo 2 วันที่ผ่านมา +1

    Wie stellst du sicher, dass die Dienste zwar über SSL im internen Netzwerk verfügbar sind aber nicht über das Internet erreichbar sind? Ich möchte ungern die Admin Oberfläche von z. B. dem NPM von außen (Internet) erreichbar machen.

    • @officialjusec
      @officialjusec  2 วันที่ผ่านมา

      Hey und vielen Dank für deinen Kommentar.
      Der Server läuft Zuhause im privaten Netzwerk. Daher beziehen wir das SSL Zertifikat auch über die DNS-Challenge (für die HTTP-Challenge müsste er über Port 80&443 erreichbar sein). Zusätzlich bestehen keine public DNS Einträge zu dem Server, selbst wenn wir hier die private IP des Servers aus unserem Netzwerk dort eintragen würde (z.b. 192.168.1.10), würde man diesen trotzdem nicht von außen erreichen, da dies keine Öffentliche IP-Adresse ist.
      Falls du weitere Fragen dazu hast, lass es mich gerne wissen!

  • @peterjagusch2517
    @peterjagusch2517 2 หลายเดือนก่อน +1

    Nachdem ich mehrere andere Anleitungen ausprobiert habe, hat diese sofort funktioniert. - Allerdings musste ich in der compose.yaml des Webservers den zweiten networks-Eintrag in die erste Hierarchieebene verschieben (wo auch "services" steht). Danke für die verständlichen Erklärungen.

    • @officialjusec
      @officialjusec  2 หลายเดือนก่อน +1

      Hallo @peterjagusch2517
      Vielen Dank für deinen Kommentar und Feedback!
      Es freut mich zu hören, dass die Anleitung für dich super geklappt hat!
      Welchen 2. Netzwerkeintrag meinst du? In der Compose von dem Blog Artikel wird quasi das Default Netzwerk des Container umbenannt zu reverse-proxy und außerhalb erreichbar gemacht (damit dieser dann bei den anderen Container zusätzlich verwendet werden kann, dort muss er dann auch als network hinzugefügt werden + dem entsprechenden Container ebenfalls nochmal angehangen werden.)

  • @Ticino26
    @Ticino26 หลายเดือนก่อน +1

    Hallo Jusec, deine Home-Lab-Serie hat mich sehr angesprochen und ich habe sofort Video #001 und #002 nachgebaut. Leider komme ich mit folgender Fehlermeldung nicht weiter:
    Error response from daemon: driver failed programming external connectivity on endpoint nginx-proxy-manager (fd2526c5dfc51dba712b77216a700b8fdddc1a86cd3038d023f5d0dbdf281ba6): failed to bind port 0.0.0.0:80/tcp: Error starting userland proxy: listen tcp4 0.0.0.0:80: bind: address already in us
    Einzeln laufen beide Installationen (AdBlock-Home bzw. Nginx-Proxy-Manager) sauber, aber sobald beide laufen sollen, kommt der Fehler. Müsste evtl. bei AdGuard-Home der Port 80 auf 8080 oder ähnlich hören? Ich würde mich sehr freuen, wenn du mir auf die Sprünge helfen könntest.

    • @officialjusec
      @officialjusec  หลายเดือนก่อน +1

      Hey @claus-peterdonner7574 ,
      Vielen Dank für dein Kommentar und Feedback!
      der Binding error sagt aus, dass Port 80 bereits in benutzung ist. Ich persönlich habe AdGuard in einem separatem LXC Container auf meinem Proxmox Host laufen, da AdGuard einige Ports benötigt um zu funktionieren (bspw. Port 53 für DNS). Wenn du AdGuard auf dem selben Host bzw. VM laufen lassen willst wie unteranderem NGINX, dann könntest du probieren das AdGuard webinterface, wie du auch schon meinst, auf einen anderen Port zu binden github.com/AdguardTeam/AdGuardHome/wiki/FAQ#webaddr
      Ansonsten gibt es auch eine Variante, AdGuard Home ebenfalls als Docker Container laufen zu lassen. Dafür musst du dann die Ports wie DNS und co. in den Container mappen und das Webinterface kannst du per NGINX erreichbar machen.

    • @Ticino26
      @Ticino26 หลายเดือนก่อน

      @@officialjusec Hallo Jusec, ich konnte das Problem lösen, indem ich meine Domain nun auch von Cloudflare verwalten lasse. Bin gespannt auf weitere Videos der HomeLab-Serie. Ich schätze deine technischen Erklärungen sehr. Du schaffst es komplizierte Sachverhalte einfach und verständlich rüberzubringen. Viele Dank!

  • @andre6493
    @andre6493 10 วันที่ผ่านมา

    Ich bekomme es einfach nicht hin.. kann es sein, dass ich noch etwas am Router/Modem einstellen muss? Egal ob über IONOS, cloudflare oder duckdns, immer page not found error. Hab’s mit pihole und adguard versucht. Irgendeine Idee?

    • @officialjusec
      @officialjusec  10 วันที่ผ่านมา +1

      Cloudflare wird in dem Video nur genutzt um per DNS-Challenge ein Zertifikat für die Domain von Let´s Encrypt zu erhalten(da der Server nicht von außerhalb erreichbar ist).
      AdGuard ist der DNS Server im Home-Netz (Alle Geräte erfragen dort die IPs zu den Domains). In Adguard wurde eine Domain Weiterleitung konfiguriert, so dass die Clients Zuhause den Nginx Proxy Manager als IP zurückbekommen.
      Nun kann aus dem Netz Zuhause auf die Services über den Nginx Proxy Manager zugegriffen werden.
      Von wo aus versuchst du auf die Services zuzugreifen? Außerhalb des Heimnetzes sind diese nicht erreichbar. Ich bin mir unsicher, was du dort mit IONOS und duckdns probiert hast?

    • @andre6493
      @andre6493 9 วันที่ผ่านมา +1

      @@officialjusec Danke für die Antwort. Ionos hostet meine domain, hab die Nameserver nach Cloudflare übertragen.
      Was pihole und adguard machen verstehe ich, meiner Meinung nach habe ich beide bei den Versuchen auch richtig konfiguriert. SSL Zertifikate habe ich auch immer über NGINX bekommen - Reverse Proxys waren auch richtig. Nur hatte ich jedes mal das Problem, dass ich über die URL's "Page not found" bekommen habe. Aktuell läuft alles über Cloudflare Tunnels aber da bin ich absolut nicht happy mit.
      Bei duckdns habe ich mir einfach mal eine domain geholt und es damit versucht, aber ich das hat nicht geklappt. Natürlich versuche ich nur innerhalb meines Netzwerkes zuzugreifen.
      Update: Nach ein paar Stunden googlen habe ich das Problem wohl gefunden. Der Telekom Router ist wohl echt mies.. :-)

    • @officialjusec
      @officialjusec  9 วันที่ผ่านมา

      Schön das du das Problem gefunden hast!😊
      Inwiefern ist der Telekomrouter involviert? Also was genau war das Problem?
      Normalerweise umgehst du den Router indem du an deinem Rechner als DNS Server bspw. Den AdGuard Server nimmst. Dort ist dann ja eine Umschreibung der Domain hinterlegt auf die Ip-Adresse des Nginx Servers. Wenn du nun die Domain aufrufst, leitet dich der AdGuard zu dem Nginx Server und es sollte funktionieren.

    • @andre6493
      @andre6493 9 วันที่ผ่านมา

      @@officialjusec ich kenne mich nicht 100% aus, man liest oft von NAT Hairpinning, der Router arbeitet wohl nicht mit den vergebenen IP‘s sondern mit den öffentlichen IP‘s. Aber wie gesagt, davon hab ich noch keine Ahnung. Problem umgehe ich indem ich dhcp über das pihole und nicht über den Router laufen lasse

  • @MK-069
    @MK-069 2 หลายเดือนก่อน +1

    ich habe den adguard nicht , geht das auch mit dem Pihole

    • @officialjusec
      @officialjusec  2 หลายเดือนก่อน

      Hallo @MK-069
      vielen Dank für deinen Kommentar!
      Ja das geht auch mit PiHole und ist kein Problem. Du gehst auf dem PiHole Webinterface einfach auf den Punkt "Local DNS" und dort auf "DNS Records". Hier kannst du nun ebenfalls die Domain als Eintrag hinzufügen, damit PiHole die Anfragen zum Proxy Manager umleitet.

    • @MK-069
      @MK-069 2 หลายเดือนก่อน

      @@officialjusec leider geht das nicht . hab alles eingerichtet in nginx Proxy und und Cloudflare da lüft alles und im Phi ha ich es auch so gemacht nur zeigt der mit trotz https Seite sei unsicher.

    • @officialjusec
      @officialjusec  2 หลายเดือนก่อน

      Wenn du die domain anpingst kommt dann die richtige lokale ip adresse vom server wo der proxy läuft zurück?
      Und hast du dem proxy host in nginx im zweiten tab auch das Zertifikat zugewiesen?
      Bzw. Hat sonst soweit auch alles mit dem Zertifikat geklappt? Also hast du ein gelüstiges erhalten?

  • @maiertv_official
    @maiertv_official หลายเดือนก่อน +1

    würde bei mir keinen sinn geben, weil ich oft von unterwegs per VPN draufgehe und dann mein interner DNS nicht mehr funktionieren würde

    • @officialjusec
      @officialjusec  23 วันที่ผ่านมา

      hey @maiertv_official
      Ich kenne deine genaue VPN Konfiguration nicht. Aber in dem Moment wo du mit dem VPN Verbunden bist, kannst du vermutlich Zuhause ja alle Server erreichen. Du könntest deine VPN Verbindung also so umkonfigurieren, dass du dort deinen DNS Server Zuhause nutzt und alle Anfragen darüber laufen.
      Später in der Reihe werde ich auch noch ein Video zu einem Tool machen, welches ich nutze um von Überall auf meine Services Zuhause zuzugreifen. Hier gibt es nochmal mehr Möglichkeiten, völlig automatisiert meine Domain im Homelab über den DNS Zuhause aufzulösen, alles andere aber über andere DNS Server etc.