Docker & Traefik - Trennung intern & externe Dienste

  • Moin,

    ich arbeite mich ein wenig in Traefik ein und habe doch ein paar Fragen / Probleme und dachte mir: Wir haben hier doch für alles mindestes einen Experten [ay]

    Problemstellung: 2 Domains, eine externe IP, 2 Hosts

    diverse Dienste werden auf den 2 Hosts mittels Docker & Traefik gehostet und sind aus dem internen Netz wunderbar erreichbar.
    Beispiel: Nextcloud.DOMAIN1.de -> nextcloud auf Host1 wird aufgerufen, Nextcloud.DOMAIN2.de -> Nextcloud auf Host2 wird aufgerufen. Das Selbe Spiel mit Paperless usw usw.

    Wie kann ich das ganze jetzt von extern realisieren? Ich habe 2 Domains aber nur eine feste IP. Zusätzlich möchte ich nicht alle Subdomains von extern zugreifbar haben, die Paperless.domainxyz.de soll nur von intern erreichbar bleiben, nextcloud und Dokuwiki aber auch von extern. Wie kommt die Entscheidung, welcher Host mit welchem Traefik für welche Domain zuständig ist?

    Vlt hat hier Jemand so etwas schon umgesetzt. Muss auch nicht mit Traefik sei! Bin da offen für ganz andere Herangehensweisen und Alternativen. Traefik machte für mich bisher einen guten Eindruck, gerade bzgl. Erweiterungen einbringen wie Let's Encrypt, Fail2Ban usw.

    grüße, Noob [bt]

    das Einzige was am Ende zählt ist
    dass ihr lebt was ihr liebt und liebt wofür ihr lebt


    Kodi HTPC - W11 | AMD Athlon 3000G | Pioneer A 504R Bj. 96
    OMV NAS - NAS | Emby Server | LogitechMediaServer
    3x Logitech SqueezeBox & 3x RasPi PiCorePlayer
    Loxone SmartHome

  • Bin da nicht der Experte, aber ich würde ggf. einen Webserver davor setzen, dieser hat 2 Host-Konfigs und dann entscheidet er welche URL dahinter aufgerufen werden soll wenn entweder Host1 oder Host2 aufgerufen wird. Ich glaube sowas nennt man dann "reverse proxy"?!

    Wertschätzung kostet nichts, aber sie ist von unschätzbarem Wert.

  • Genau dafür ist Traefik da :)

    das Einzige was am Ende zählt ist
    dass ihr lebt was ihr liebt und liebt wofür ihr lebt


    Kodi HTPC - W11 | AMD Athlon 3000G | Pioneer A 504R Bj. 96
    OMV NAS - NAS | Emby Server | LogitechMediaServer
    3x Logitech SqueezeBox & 3x RasPi PiCorePlayer
    Loxone SmartHome

  • Also ich hab nur Erfahrungen mit nginx als reverse proxy, da geht das ganz einfach über die Weiterleitungsregeln, bei denen du natürlich mehrere Verschiedene Domains nutzen kannst und dementsprechend die weiterleitung an die richtige IP im Heimnetz weiterleiten. Ich gehe stark davon aus, das traeffik das auch kann

  • Am besten wie DaVu sagt, einen Webserver davor setzen auf dem dann Traefik oder ein anderer Reverse Proxy läuft. So jetzt mit zwei Traefikinstanzen auf den beiden Hosts ist das eher suboptimal gelöst. Oder halt eine Firewall mit Proxy laufen lassen, je nach dem was an Hardware vorhanden ist.

    Je nach DNS Konfiguration musst du dich auch noch mit Split-DNS beschäftigen. Wenn du die URLs jetzt schon intern nutzt, sehe ich da schon Probleme auf dich zukommen.

  • muss ich mich also nochmal tiefergehend einlesen. Bisher wars leider nicht arg verständlich für einen Anfänger aber Nungut. Wird schon. Der @DaVu hat genau den Bereich bei Traefik gezeigt um den es da genau geht.
    Reverseproxy ist schon logisch, ist ja im Einsatz :) geht mir halt um die Konfig.

    Die Firewall könnte da schon einiges machen, unterstützt aber leider kein lets encrypt :( daher da keine Möglichkeit etwas vorab zu regeln, leider.

    Intern läuft alles wunderbar, keine Probleme bzgl dem DNS Thema. Da kenn ich mich aus ;)

    Letztendlich werde ich glaube die Servertrennung etwas abändern, vereinfachen. Heißt aber wieder raus mit dem Geld und Hardware besorgen.

    das Einzige was am Ende zählt ist
    dass ihr lebt was ihr liebt und liebt wofür ihr lebt


    Kodi HTPC - W11 | AMD Athlon 3000G | Pioneer A 504R Bj. 96
    OMV NAS - NAS | Emby Server | LogitechMediaServer
    3x Logitech SqueezeBox & 3x RasPi PiCorePlayer
    Loxone SmartHome

  • mal ne Frage in die Runde - hat irgendjemand Nextcloud in Verbindung mit Traefik und Lets Encyrpt am laufen? habe jetzt 5 verschiedene Anleitungen durch und alles endet mit dem gleichen fehler seitens Let's Encrypt:

    treafik acme: error: 400 :: urn:ietf:params:acme:error:connection refused

    gibt zwar etliche threads zu mit dem Problem aber irgendwie keine Lösung die mir hilft. So langsam hab ich null dunzt woran das hängt. bin doch nicht der einzige mit dem Problem?

    Ja http & https ist von außen auf die interne IP vom Docker server durchgeleitet
    Ja DynDNS Adresse zeigt auf die richtige IP
    JA firewall leitet die Pakete richtig weiter

    alles andere geht, der Zugriff auf die Nextcloud usw nur das Zertifikat wird einfach nicht erzeugt ..

    das Einzige was am Ende zählt ist
    dass ihr lebt was ihr liebt und liebt wofür ihr lebt


    Kodi HTPC - W11 | AMD Athlon 3000G | Pioneer A 504R Bj. 96
    OMV NAS - NAS | Emby Server | LogitechMediaServer
    3x Logitech SqueezeBox & 3x RasPi PiCorePlayer
    Loxone SmartHome

    Einmal editiert, zuletzt von noob_at_pc (6. April 2023 um 22:39)

  • lalalalalalala X/ :whistling:

    wie immer, der Fehler sitzt VOR dem Bildschirm.
    Intelligenter weise Firewall Filter auf deutsche IP Range gemacht, weil ... wenn jemand auf meine NextCloud zugreift, dann nur aus Deutschland. Fertig. Isso.
    Ist nur Schade, dass lets Encrypt keine Server hier in DE hat. Daher hat mit meinen Test ja immer alles funktioniert, bin ja hier in DE.
    Und statt ein reject machte die Firewall halt ein drop, daher habe ich im standard [definition='1','0']log[/definition] nichts gesehen.

    Nächstens mal gleich den tcpdump anschauen und feststellen, dass da was verworfen wird ...


    [ah]

    das Einzige was am Ende zählt ist
    dass ihr lebt was ihr liebt und liebt wofür ihr lebt


    Kodi HTPC - W11 | AMD Athlon 3000G | Pioneer A 504R Bj. 96
    OMV NAS - NAS | Emby Server | LogitechMediaServer
    3x Logitech SqueezeBox & 3x RasPi PiCorePlayer
    Loxone SmartHome

    Einmal editiert, zuletzt von noob_at_pc (6. April 2023 um 20:18)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!