INTERNE Portweiterleitung zu Containern

  • Hallo zusammen,


    ich hatte zwar schon etwas häufiger vor meiner Registrierung hier und in anderen diverse Beiträge zu Portweiterleitungen durchforstet, allerdings leider noch keinen passenden Eintrag gefunden.

    Oder ich seh den Wald vor lauter Bäumen nicht ;) ...

    Vielleicht könnt ihr mir ja helfen.


    Hier mal ein "kurzer" Überblick:


    Ich bin bei mir an Arbeit etwas ins kalte Wasser geworfen worden. Zwar bin ich jetzt nicht gerade unwissend, aber momentan steh ich etwas am Schlauch.

    Wir haben ein ht973-ax mit QuTS hero im Einsatz auf dem ich einen Gitlab-Server und zukünftige ein paar weitere Serveranwendungen einrichten soll.

    Bei der bereits via Containerstation vorgefertigten GitLab-APP kann ich ja den http und ssh port bei der Einrichtung über das Frontend angeben und kann dann auch aus dem Firmennetz auf die GUI vom NAS u. Gitlab sowie SSH zugreifen. Da man bei der APP allerdings etwas eingeschränkt ist und ja noch weitere Anwendungen/Dienste hinzukommen sollen,

    habe ich mich dazu entschlossen, einen Ubuntu Server via LXD aufzusetzen und dort u.a. den Gitlab-Server drauf zu packen.

    Funktioniert soweit auch, solange ich von der QNAP GUI via Terminal bzw. über die Browserstation auf den Gitlab drauf will.

    und somit zu meinem Problem:

    Seitens unserer IT darf und wird das NAS nicht supported. Habe lediglich 3 IP-Adressreservierungen auf die MAC-Adressen des NAS eingetragen bekommen und kann auch nicht auf einen full qualified domain name oder routing einträge zurückgreifen. Somit bleibt mir nur der Zugriff via DNS-Name oder IP-Adresse des NAS + die Portangaben. Und hier such ich nun die möglichkeit, via interne Portweiterleitung im NAS aus dem Firmennetz auf die unterschiedlichen container zu kommen.

    Also z.b. //NASName:18180 >> Container A:80 oder //NASname:18181 >> ContainerB:80 oder //NASName:18122 >> Container A:22 oder //NASname:18123 >> ContainerB:22.


    Wie gesagt, entweder seh ich vor lauter Bäumen den Wald nicht oder steh vollkommen auf dem Schlauch.


    Wie kann ich innerhalb des NAS sagen, kommt eine anfrage auf port xx, dann leite diese auf den container mit port xx weiter.


    Vielen Dank schon einmal für das durchlesen der "kurzen" Ausführung und eventuelle Hilfestellung.


    VG, Jan:saint:

  • Naja du musst die Ports bei der Container Erstellung dementsprechend angeben. Aber warum gehst du den Umweg über LXC / LXD? Du kannst die Container ja auch einzeln, oder als App über die Container Station erstellen. Als bsp. hier mal mein Gitea, Wiki.js, mariadb Stack:


    Alle Container sind unter der IP des NAS zu erreichen. In deinem LXC / LXD Setup sollte das genauso umsetzbar sein (behaupte ich jetzt mal, da ich noch nicht mit LXC / LXD gearbeitet hab).

  • moin moin


    dolbyman Super, vielen Dank :) - ich sag doch, den Wald vor lauter Bäumen nicht gesehen.

    Allerdings klappt es bei mir nur mit den Standartports - also wenn ich z.b. 22 auf 22 weiterleite zum Container. Dann komm ich von extern auch via ssh auf die Ubuntu LXD. Wähle ich die Ports z.B. 18022 >> 22 dann habe ich keinen Zugriff. Muss ich denn im QuTS noch irgendwo zusätzlich was einstellen ?


    Azrael783

    Danke für den Hinweis - ja, hatte ich auch versucht, allerdings ist Container/Docker Neuland für mich - wohingegen ich mich bei einem "reinen" Ubuntu sicherer im Umgang fühle - daher viel meine Wahl aktuell auf Ubuntu via LXD.


    Bei deinem Beispiel nutzt du ja das Gitea - ich muss halt leider auf Gitlab bleiben, weil die komplette bestehende DB des alten Gitlabservers auf meinen umgehoben werden soll.


    VG, Jan

  • Moin Moin....


    Nein, die Firewall war nicht aktiv - bzw. es sind alle Verbindungen zugelassen und auch keine IP- oder Netzwerkbindungen eingetragen.
    Die Ports hatte ich auch entsprechend bei der Installation weitergeleitet. Aktuell die Standart und auch die modifizierten Ports.

    Zugriff bekomme ich aber sowohl für http wie auch für ssh nur über http:80 und ssh:22.


    VG, janPortweiterleitungen.png

    Firewall.png

  • Dann lass doch mal die Standardports weg. Bei deinem SSH Client musst du dann natürlich auch den korrekten Port angeben. Wahrscheinlich kommt es zum durcheinander, da du die Port mehrmals vergeben hast.

  • Die Standart-Ports habe ich erst nachträglich hinzugefügt. Aber ich probiere es nochmal ohne die aus. Hatte nur die Vermutung, dass die eigenen Ports von mir nicht vom NAS durchgereicht werden.

  • Warum sollten die nicht durch gereicht werden? Du kannst mit nmap relativ leicht überprüfen welche Ports offen sind.

  • Hallo,

    sorry, für die späte rückmeldung...
    Hatte mich via ssh direkt auf das NAS aufgeschaltet und die Ports geprüft. Alle Ports sind offen.

  • Ok, und du kannst dich immer noch nur mit den Standardports anmelden? Sorry, bin grade ein wenig raus wo jetzt das Problem liegt, bzw was der letzte Stand ist ...

  • Hi… war mal ein paar Tage am ausspannen ;)


    Ja, bisher klappt es weiterhin nur über die Standartports. Mit ausnahme der Gitlab Installation, die von QNAP vorgefertigt ist. Da kann ich mich auch via ssh auf dem während der Installation angegebenen Port anmelden.
    Bei allen anderen Containern nur, wenn ich http 80 oder ssh 22 nutze…


    VG

  • war mal ein paar Tage am ausspannen

    Muss auch mal sein ;) Und hast du jetzt mal versucht, die Standardports rauszulassen und nur "deine" anzugeben?

  • Moin... ja hatte die standartports entfernt (jetzt natürlich wieder drin für den zugang) aber gebracht hatte es nichts. Hatte auch nach der Änderung das NAS neu gestartet, aber kein Erfolg.
    Firewalls und Sichheitseinstellungen sind (noch) komplett offen, da kann es dann auch nciht dran liegen.

  • Dann bin ich leider überfragt. Sowas hatte ich bisher noch nicht. Hast du mal in die Logs der Anwendungen geschaut, mit denen du dich verbinden willst?

  • Kein Problem, danke trotzdem für deine Mühen :)
    Gab keine nütlichen Infos in den Logs, durch die ich auf eine Ursache schließen könnte.....

    Werde jetzt erst einmal auf die Gitlab app in der Containerstation zurück greifen, damit mein Chef erstmal beruhigt ist.

    Werde es aber parallel weiter versuchen.