Jump to content

Benötige Rat zu SimpleX XFTP Server


Go to solution Solved by alturismo,

Recommended Posts

Hallo zusammen,

ich habe heute die beiden SimpleX Container entdeckt und fand die Idee, einen eigenen Chat-Server zu betreiben phänomenal.

Jetzt bin ich gar nicht mehr so begeistert:

 

Den SMP-Server habe ich zum Laufen bekommen, allerdings mit mehr Glück als Verstand.

Die Standard Ports habe ich nicht verändert, da "5223" noch frei war und ein Passwort vergeben.

Als IP/domain "smp.mydomain.dedyn.io"

Nginx Eintrag erstellt mit "smp.mydomain.dedyn.io" und entsprechendes SSL-Zertifikat dazu ausgewählt.

Nach Containerinstallation ins Protokoll und die Serveradresse kopiert und aufs Handy geschickt.

Server manuell eingetragen und Test --> Fehler -- In der Fritzbox den Port freigegen als TCP 5223 --> Erfolg

Ich glaube, der Traffic geht gar nicht über den Nginx, das smp:// wird gar nicht geroutet.

 

Jetzt habe ich ein Problem mit dem XFTP-Server, welcher für die Dateien zuständig sein soll.

Dem habe ich xftp.mydomain.dedyn.io zugeordnet.

Vermutlich auch umsonst, da der von außen mit xftp:// auf 443 daherkommt und da lauscht der Nginx Container.

Gibt es für so einen Fall eine Lösung, die ich mit meinen bescheidenen Kenntnissen umsetzten kann?

 

Vielleicht hat einer von euch in dieser Richtung schon Erfahrungen gesammelt.

Oder kann mir eine Alternative vorschlagen?

 

Grüße und herzlichen Dank

Wubl

Link to comment
  • Solution
On 6/19/2024 at 2:19 PM, wubl said:

Gibt es für so einen Fall eine Lösung,

ja, aber ... wie du festgestellt hast kann nginx das so nicht, nginx reverse proxy ist nur für http/s traffic ausgelegt ...

 

da gehen auch keine gameserver usw usw ...

 

da bleibt nur Ports entsprechend öffnen.

 

On 6/19/2024 at 2:19 PM, wubl said:

Vermutlich auch umsonst, da der von außen mit xftp:// auf 443 daherkommt und da lauscht der Nginx Container.

 

wenn du am client das xftps://....:443 nicht umstellen kannst (anderer port) wird es heikel ...

 

ja, es gibt einen Ansatz das mit nginx streamserver zu lösen, ist aber sehr komplex und dafür nicht ausgelegt (geht auch nicht mit allem)

 

schau erstmal lieber nochmals nach ob es nicht die Möglichkeit gibt das am client einzustellen

 

Alternativ, im passenden github anfragen

  • Like 1
Link to comment
Posted (edited)

Danke alturismo für deine Hilfe!

Der Tipp, Clientseitig nach Abhilfe zu suchen war super.

 

Ich kam jetzt einen großen Schritt weiter.

Erkenntnisse:

Subdomains sind überflüssig.

Habe jetzt beide Container neu eingerichtet, zuvor unter appdata den Ordner simplex gelöscht, um die config Dateien neu erstellen zu lassen.

Dann im Router die Ports 5551 und 5552 freigegeben.

 

Im smp-Server den 5551 zugewiesen und als IP nur mydomain.dedyn.io, Passwort beliebig

entsprechend dem xftp-Server die 5552 und mydomain.dedyn.io

 

aus den Logs die Serveradressen rauskopiert und in der Android app unter manuellem Server eingefügt und jeweils um ":5551" und ":5552 " ergänzt

 

Jetzt läuft alles, allerdings sind die beiden Ports offen.

 

Zwei Fragen habe ich allerdings noch:

 

In der Android App gibt es unter Netzwerk & Server die Möglichkeit "SOCKS-Proxy nutzen (Port 9050) mit dem Hinweis "Zugriff auf die Server über SOCKS-Proxy auf Port 9050? Der Proxy muss gestartet werden, bevor diese Option aktiviert wird.

Was hat das zu bedeuten?

 

Edit: bedeutet, dass man das Tor Netzwerk zwischen Client und Server schaltet, was ich nicht brauche

 

Könnte ich mit dem Container swag den Traffic routen?

Dazu müsste ich vermutlich von Nginx dorthin wechseln...

Edited by wubl
Link to comment
40 minutes ago, wubl said:

Was hat das zu bedeuten?

Das wenn du noch zusätzlich einen socks proxy dazwischen schalten willst ... das einzurichten wäre

 

41 minutes ago, wubl said:

Könnte ich mit dem Container swag den Traffic routen?

Swag nutzt auch nginx, gleiches Spiel, nur wenn dann überhaupt bei swag order nginx nativ, npm ist die click Variante 😉 aber bei der Fragestellung ... lass es, ist wirklich komplex und geht nur bei diversen Szenarien.

Link to comment

Werde deinen Rat befolgen.

Danke nochmals und schönes Wochenende.

 

Falls sich das kleine Projekt nach einer mehrtägigen Testphase bewährt hat, schreibe ich ein kleines Howto oder Erfahrungsbericht

  • Like 1
Link to comment
7 minutes ago, wubl said:

Werde deinen Rat befolgen.

 

gerne, und ist hoffentlich nicht falsch angekommen, aber das Thema stream server (so nennt sich das in nginx) in Kombination mit dem Reverse Proxy ist nicht ohne, der stream Server muss davor geschaltet werden, mit speziellen SSL Abfragen das ganze filtern um dann sauber zu routen, sprich, was ist TCP / UDP traffic, dann an die richtigen endpoints weiter ja nach Adressierung, was ist HTTP/S und dann weiter an den Reverse Proxy, hebelt auch großteils dann die Absender IP aus (forword X-IP geht nicht mehr usw usw), sprich kommt alles von localhost auf einmal an die HTTP enpoints bzw an die TCP / UDP endpoints ...

 

kurz, hab mich damit auseinander gesetzt weil ich darüber RDP Rechner hinter dem stream Server auf port 80/443 erreichen wollte, oder SSH (das hat geklappt), oder ... war aber am Ende nicht trivial und birgt mehr Probleme als Lösungen ... daher dann Umstieg auf Alternativen ;)

 

Viel Erfolg bei deinem SimpleX Projekt 👍

Link to comment

Nein, nein, überhaupt nicht falsch angekommen. Es darf nicht zu komplex werden, möchte es ja selbst betreuen und verstehen. Deshalb bin ich für jeden gut gemeinten Tipp dankbar und du hast dir ja extra Mühe gegeben, es zu erklären. Danke dafür.

Link to comment
15 minutes ago, HanSolo97 said:

Schau mal hier, die Lösung heißt, Docker Network + Nginx Proxy Manager mit TCP Stream.

nicht wirklich ... das ist der Standard stream und damit machst du nichts anderes als eine Ebene zwischen offenem port und streamx macht ...

 

aber nicht per dns unter port 443 aufzurufen ist ...

Link to comment
2 minutes ago, HanSolo97 said:

smp://myserver:443 funktioniert bestimmt nicht, oder?

ich hab es oben beschrieben, es gibt einen (sehr komplexen) Weg ... ja, der stream Server wird dafür "missbraucht", aber nicht in der base Konfiguration was mehr oder weniger nur ein port forwarding darstellt ... sprich, das ist in der Form witzlos ... macht Sinn wenn ich immer einen Server dazwischen stellen will, aber hat nichts mit SSL routing zu tun.

 

wenn du Dir das mal geben willst, tcp udp traffic mit ssl pre read um alles über 80/443 zu routen.

 

Starte hier um die Base zu verstehen https://nginx.org/en/docs/stream/ngx_stream_ssl_preread_module.html

 

dann mal eine server fault Diskussion https://serverfault.com/questions/1049158/nginx-how-to-combine-ssl-preread-protocol-with-ssl-preread-server-name-ssh-mul

 

und hier dann advanced mit Beispielen ... https://gist.github.com/kekru/c09dbab5e78bf76402966b13fa72b9d2

 

viel Spaß dabei ;)

Link to comment
16 minutes ago, HanSolo97 said:

Ui ok, das sieht aufwändig aus, schau ich mir aber gerne an sobald ich Zeit hab, und versuche dann ne kleine Doku für SimpleX daraus zu machen. :) 

lies dich richtig ein, es geht auch nicht mit allen TCP/UDP Diensten ... clients müssen auch gewisse headers mitliefern,

ansonsten failed das immer und es geht einfach technisch nicht, keine Zuordnung, kein routing, fertig, nur als Info ...

Link to comment

Nachtrag, und falls du deine Dienste mit geoip, 2fa, ... abgesichert hast, wird das ggf. auch kritisch, weil dann auch meist localhost mitgeliefert wird, ist halt TCP und kein HTTP wo forward x-ip und co mitlaufen, auch das beachten wegen Sicherheitsthemen, viele lokale Dienste bieten ja auch lokal ohne auth dann, hinter so einem Konstrukt sind alle Verbindungen dann lokal, auch hier einlesen, verstehen, bedenken ob das ok und gewollt ist ...

Link to comment

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...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...