ratzekahl1
Goto Top

Grundsätzliche Frage FTP

Hallo zusammen,
ich habe mal eine grundsätzliche Frage. Ich setze mich aktuell verstärkt mit dem Thema Firewall, insbesondere von Securepoint auseinander.
Aktuell scheitere ich am Thema FTP (normale Website-Pflege) in zweierlei Hinsicht. Einmal das Verständnis und zweitens an der Umsetzung. Es geht einfach um einen FTP-Server von AllInkl.

Zuerst brauche ich die Ports und den Modus. Soweit klar. Passive Übertragung und Port 21. Dann findet man um Internet in fast allen Foren Port 20, 989, 990, 991 und dann von AllInkl noch die Anweisung Port 65000-65500. Das sind 505 Ports?!! In den Einstellungen des Clients finde ich die Option "Wenn möglich explizietes FTP über TLS verwenden."

Wieso braucht ftp soviele Ports?? Es müssten doch 2, von mir aus 4 ausreichen? Senden, Empfangen, Dateiliste intern und Dateiliste extern. Die Strategie sollte doch eigendlich lauten nur das freigeben, was notwendig ist. Nur bei 500 Ports wird die Firewall da nicht zum Fliegengitter? Wenn ich ein Hacker wäre, würde ich mir doch dann einen dieser Ports schappen und darüber meine Schadsoftware einschleusen... Oder ist das irgendwie festeglegt, dass über Port xy nur Dienst A läuft? Oder geht das tatsächlich über Verkehrsanalyse? Ansonsten wäre das Ganze Firewallprinzip doch für die Katz. Viren kommen alle auf Port 80 und gut?

Wenn ich in die Umsetzung gehe und die Theorie vernachlässige, gehe ich auf die Firewall und öffne entsprechende Ports vom Internet ins Lan. Die Verbindung kommt zustande, aber beim Anzeigen des externen Verzeichnisinhaltes gibt es eine Fehlermeldung. Der externe Verzeichnisinhalt konnte nicht angezeigt werden...

Müssen da noch mehr Ports geöffnet werden? Oder habe ich einen grundsätzlichen Denkfehler .

Viele Fragen
mfG
ratzekahl

Content-ID: 884840919

Url: https://administrator.de/forum/grundsaetzliche-frage-ftp-884840919.html

Ausgedruckt am: 22.12.2024 um 17:12 Uhr

wiesi200
wiesi200 02.07.2021 aktualisiert um 19:15:17 Uhr
Goto Top
Hallo,

erst Mal bei den Ports stellt sich die Frage ob Aktiv oder Passiv Modus daraus ergeben sich die Ports. Je nach Modus brauchst du dann eine Freigabe auf einer Portrange. Aber dafür gibt es eigentlich sehr schöne Erklärungen die man selbst suchen kann. So Basics muss man nicht immer auf's neue erklären.

Aber: FTP ist alt und grundsätzlich sehr unsicher. Und ehrlich wer das heute noch verwendet ist selbst schuld.
it-fraggle
it-fraggle 02.07.2021 um 17:00:57 Uhr
Goto Top
aqui
aqui 02.07.2021 aktualisiert um 17:48:24 Uhr
Goto Top
Einmal das Verständnis und zweitens an der Umsetzung.
Vermutlich hast du NAT nicht bedacht und scheiterst am Passive oder Active FTP ?!
https://slacksite.com/other/ftp.html
https://www.jscape.com/blog/bid/80512/active-v-s-passive-ftp-simplified
Das sind immer so die typischen Anfängerfehler und Hürden weil keiner beachtet das das Protokoll 2 TCP Ports unabhängig nutzt. Jedenfalls im Active Mode.
Was du oben über die Ports zitiert hast ist natürlich völliger Quatsch und stammt vermutlich aus Anfänger - oder Bastlerforen aber niemals von Adminstratoren. Du glaubst ja auch nicht das dein KFZ mit Wasser im Tank fährt wenn sie dir das in Foren versichern, oder ?
Warum du dich auch an so unsinnigen Spekulationen beteilgst ist ebenso vollkommen unverständlich !
Nimm dir, wie immer, einen Wireshark oder tcpdump zur Hand und sieh dir deine FTP Session an. Einfacher gehts doch nun wahrlich nicht.
Dort siehst du doch ganz einfach und ohne Raterei schwarz auf weiß WELCHE Ports bei FTP in welchem Mode aktiv genutzt werden. Auf diese einfache Logik kommt auch der Azubi im ersten Lehrjahr sofort als Erstes. face-wink

Kollege @wiesi200 hat es oben ja schon mit einem Satz gesagt. FTP setzt man nicht mehr ein. Mit SCP wie z.B. WinSCP usw. gibt es da bessere und vor allem sicherere Alternativen die sich zudem über einen singulären SSL TCP Port auch firewalltechnisch sehr viel einfacher handeln lassen.
Lochkartenstanzer
Lochkartenstanzer 02.07.2021 aktualisiert um 18:26:10 Uhr
Goto Top
Zitat von @aqui:

Das sind immer so die typischen Anfängerfehler und Hürden weil keiner beachtet das das Protokoll 2 TCP Ports unabhängig nutzt. Jedenfalls im Active Mode.


FTP benutzt immer(!) 2 TCP-Verbindungen, egal ob active oder passive. das eine ist die Kontroll-Verbindung, über das die Steuerkommandos übertragen werden und das andere die Datenverbindung, über das dann die Daten übertragen werden. Die Datenverbindung kann sogar zu einem dritten Teilnehmer gehen, dieser muß nicht einmal der gleiche sein, der die Kontrollverbindug aufgebaut hat!

active und passive sagen nur etwas darüber aus, welcher Teilnehmer die Daten-Verbindung aufbaut

lks

PS: Heutzutage sollte man FTP im grabe ruhen lassen und nur noch sichere Alternativen wie SFTP oder SCP verwenden.
StefanKittel
StefanKittel 03.07.2021 um 00:34:53 Uhr
Goto Top
Moin,

wie schon beschrieben ist Port 21 die Kontrollverbindung.
Für jedes Listing und jede Datei wird dann eine 2. Verbindung aufgebaut.

Bleiben wir bei dem üblichen passiven Verbindungen wo der Server dem Client eine IP und Port für diese 2. Verbindung zuweist.

Welche Ports verwendet werden wird am FTP-Server konfiguriert.
Und es für den FTP-Server einfach für jede Client-Verbindung jedes Clients einen freien Port zu verwenden.
Da macht es bei Servern mit vielen Verbindungen durchaus Sinn mal schnell 5.000 bis 25.000 Ports zu definieren.

Btw.
Üblich ist inzwischen SSH mit einem Schlüssel statt FTP mit Benutzernamen und Kennwort.
ratzekahl1
ratzekahl1 05.07.2021 um 16:26:25 Uhr
Goto Top
Hallo zusammen,
Ok. Ich habe soweit verstanden, dass man kein FTP mehr nimmt. Ist denn das oben erwähnte "Wenn möglich explizietes FTP über TLS verwenden." nicht genau das mit SSH Verschlüsselung? Die Übertragung ist auf passive eingestellt.
HideNat ist aktiviert.

@StefanKittel: Und es für den FTP-Server einfach für jede Client-Verbindung jedes Clients einen freien Port zu verwenden. Bedeutet also die range ist für viele Clients gedacht? Sowas wie eine Beschränkung gibt es nicht? Was was ich Beschränkung der Anzahl gleichzeitiger Verbindungen auf 3.

@aqui "Warum du dich auch an so unsinnigen Spekulationen beteiligst ist ebenso vollkommen unverständlich !"
Weil ich derzeit am lernen bin. Und ich muss irgendwo anfangen. Der Verbindung steht, der Verzeichnislist funktioniert nicht. Dann fängt man an zu suchen. Und es war nicht nur ein Forum. Zudem hat es selbst AllInkl geschrieben, dass man die Menge an Ports braucht.

Ich erinnere mich an die Hochzeiten von emule & Co. Die ersten Anwendungen brauchen spezielle Ports. Da war es einfach das zu unterbinden. Dann kam, ich meine Napster auf Port 80 um die Ecke und den konnte man nicht so einfach zu machen. Daher die Überlegung, ob der Verkehr irgendwie in Datenpakete zerlegt und diese analysiert werden. Ansonsten wäre es ja wie beim Auto, wo ic nur nach der Lackfarbe gehe. Polizei sucht roten Golf, der Täter malt seinen grün an und wird nicht gefunden? Da muss man auch den Inhalt kontrollieren.
StefanKittel
StefanKittel 05.07.2021 um 20:06:16 Uhr
Goto Top
Zitat von @ratzekahl1:
@StefanKittel: Und es für den FTP-Server einfach für jede Client-Verbindung jedes Clients einen freien Port zu verwenden.
Bedeutet also die range ist für viele Clients gedacht?
Ja

Sowas wie eine Beschränkung gibt es nicht
Doch. Das Beispiel ist aus einer ProFTPd-Konfigurationsdatei.
PassivePorts 60000 65535	# These ports should be safe...

Dieses System ist für Clients hinter einem NAT-Router gedacht.

Die Grundidee war, dass der FTP-Server die Datenverbindung zum Client aufbaut.
Dabei gibt der Client die IP-Adresse und den Port vor.

Was was ich Beschränkung der Anzahl gleichzeitiger Verbindungen auf 3.
Gute Frage, habe ich nie ausprobiert und hängt wohl auch von der Software ab.

Stefan
ratzekahl1
ratzekahl1 06.07.2021 um 10:27:34 Uhr
Goto Top
Ok,
nun winsc installiert, Einstellungen Port 22.
Protokoll sftp
Firewall Port 22 freigegeben.
Entfernter Rechner wird gesucht...
Gesucht Anderes Forum 18765 Port freigeben.
Keine Verbindung.
aqui
aqui 06.07.2021 aktualisiert um 10:36:02 Uhr
Goto Top
Protokoll sftp
Sollte "scp" sein !
Gesucht Anderes Forum 18765 Port freigeben.
Bahnhof ?, Ägypten ?, Forum ?
Sollte dort ja auch der Zielport TCP 22 sein ansonsten hast du einen Port Mismatch. Allerdings versteht auch kein IT Mensch diesen kryptischen Port/Forum Satz !? face-sad
ratzekahl1
ratzekahl1 06.07.2021 um 10:53:53 Uhr
Goto Top
Was verstehst Du nicht?
Anletung auf WSC: Freigabe Port 22.
Entfernte Rechner nicht gefunden.
Gesucht. Anderes Forum: 18765 solll freigegeben sein.
Entfernte Rechner nicht gefunden.
In anderen Foren: Irgendeime Port, zB 22222
Egal ob ich sftp oder scp nehme, der entfernte Rechner wird nicht gefunden.
aqui
aqui 06.07.2021 aktualisiert um 12:21:42 Uhr
Goto Top
Port 18765 oder ein anderer Phantasieport ist doch nur dann sinnvoll wenn der SSH Server/Daemon auch auf diesem Port rennt ! Das muss man dann aber logischerweise immer VORHER in der Konfig Datei definieren. Mit einem Zielport TCP 22 auf einen Server zu verbinden der 18765 erwartet ist natürlich wenig zielführend, was auch ein IT Laie sofort erkennt.
SSH bzw. SCP benutzt im Default immer TCP 22, folglich muss auch dieser Port überall durchgängig erreichbar sein sofern man eben den SSH Server nicht auf einen anderen Port umstellt.
Simple Logik ! face-wink
Abgesehen davon sollte man niemals IANA Ports verwenden wenn man Standard Ports für einen Port Verschleierung "verbiegen" will sondern sollte immer die dafür vorgesehenen Ephemeral_Ports zw. 49152 und 65535 verwenden. In Anlehnung an TCP 22 also z.B. TCP 52222 o.ä.
der entfernte Rechner wird nicht gefunden.
Pingen, sprich also überhaupt eine grundlegende IP Connectivity, ist gegeben zwischen den beiden Partnern. ?!
Wenn nicht hast du so oder so erstmal ein ganz anderes Problem als SSH bzw. SCP Ports.
ratzekahl1
ratzekahl1 07.07.2021 um 11:47:00 Uhr
Goto Top
Also Ping geht. WIe bereits geschrieben, steht die Verbindung, das Listing funktioniert nicht.
Wie gesagt, AllInkl hat mir die Ports mitgeteilt. Es funktioniert aber trotzdem nicht.
Ganz egal, ob Filezilla, Win SCP oder sonst was. DIe Sache mit dem SCP als Protokoll ist doch erstmal außen vor.
Der Tarif gibt ssh-verbindungen erstmal nicht her.

Und das ist doch der zweite Schritt. Erstmal muß es einfach funktionieren, dann sicher!
ratzekahl1
ratzekahl1 07.07.2021 um 12:12:48 Uhr
Goto Top
Lösung: Einzig die Ports 50000-50500 braucht man. Kein 21, kein 22, kein 990. Listing tuts, up und Download auch.
TLS Verschlüsslung ist auch drin. SSH wäre schöner, das gibt aber erstmal der Vertrag nicht her.
Danke für die Anregungen!

Teil2 ist aber noch offen.


Zitat von @ratzekahl1:

Nur bei 500 Ports wird die Firewall da nicht zum Fliegengitter? Wenn ich ein Hacker wäre, würde ich mir doch dann einen dieser Ports schappen und darüber meine Schadsoftware einschleusen... Oder ist das irgendwie festeglegt, dass über Port xy nur Dienst A läuft? Oder geht das tatsächlich über Verkehrsanalyse? Ansonsten wäre das Ganze Firewallprinzip doch für die Katz. Viren kommen alle auf Port 80 und gut?


aqui
aqui 07.07.2021 aktualisiert um 14:30:00 Uhr
Goto Top
Nur bei 500 Ports wird die Firewall da nicht zum Fliegengitter?
Ja natürlich. Dann ist sie nur noch reine Makulatur !
Eigentlich ist das völliger Unsinn und nur schwer verständlich und nachvollziehbar. SSH ist die weltweite Grundlage zum Management von Servern. Wieso sollte das "der Vertrag nicht hergeben" ??
Das ist ja so als wenn man ein Ticket fürs Freibad gelöst hat und am Eingang gesagt bekommt: Wasser ist aber in dem Preis nicht enthalten....
Versteht kein (IT) Mensch solcherlei Argumentation...aber egal muss man ja auch nicht. Wenns jetzt geht mit einer löchrigen Firewall ist doch alles gut.

Bitte dann auch nicht vergessen den Thread zu schliessen !
Wie kann ich einen Beitrag als gelöst markieren?
it-fraggle
it-fraggle 07.07.2021 um 18:15:17 Uhr
Goto Top
Zitat von @ratzekahl1:
Nur bei 500 Ports wird die Firewall da nicht zum Fliegengitter?
Jop, und dann fragt man sich welchen Sinn sie dann noch hat. Eigentlich sollte man gar keine Ports einfach so öffnen.
Wenn ich ein Hacker wäre, würde ich mir doch dann einen dieser Ports schappen und darüber meine Schadsoftware einschleusen...
Na, ganz so einfach ist das nicht. Auf dem Port muss auch irgendwas laufen, was "horcht" und angreifbar ist.
Viren kommen alle auf Port 80 und gut?
Viren/Trojaner und Co kommen vor allem über den Clients ins Netzwerk. Die Zeiten haben sich geändert wo Angriffe nur von außen stattgefunden haben. Heute musst du viel Aufwand betreiben Clients daran zu hindern böse Dinge aus dem Inet zuladen oder an der Verbreitung im Netzwerk zu verhindern.
ratzekahl1
ratzekahl1 08.07.2021 um 09:35:31 Uhr
Goto Top
Zitat von @aqui:

Nur bei 500 Ports wird die Firewall da nicht zum Fliegengitter?
Ja natürlich. Dann ist sie nur noch reine Makulatur !
Eigentlich ist das völliger Unsinn und nur schwer verständlich und nachvollziehbar. SSH ist die weltweite Grundlage zum Management von Servern. Wieso sollte das "der Vertrag nicht hergeben" ??
Das ist ja so als wenn man ein Ticket fürs Freibad gelöst hat und am Eingang gesagt bekommt: Wasser ist aber in dem Preis nicht enthalten....
Versteht kein (IT) Mensch solcherlei Argumentation...aber egal muss man ja auch nicht. Wenns jetzt geht mit einer löchrigen Firewall ist doch alles gut.

SSH ist erst ab Premium Vertrag mit drin.

Bitte dann auch nicht vergessen den Thread zu schliessen !
Wie kann ich einen Beitrag als gelöst markieren?
zwischenablage01
StefanKittel
StefanKittel 08.07.2021 um 09:37:29 Uhr
Goto Top
Zitat von @ratzekahl1:
SSH ist erst ab Premium Vertrag mit drin.
Das sind 2 Euro im Monat mehr. so what? you get what you pay for
ratzekahl1
ratzekahl1 08.07.2021 um 09:41:12 Uhr
Goto Top
Zitat von @it-fraggle:

Zitat von @ratzekahl1:
Na, ganz so einfach ist das nicht. Auf dem Port muss auch irgendwas laufen, was "horcht" und angreifbar ist.
Ah, ein Port ist also nicht einfach eine "Eingangstür"? Hatte es bislang so verstanden dass man über einen offenen, nicht genutzten Port, ins Netz kommt und da quasi machen kann, was man will. Also wie in diesem Beispiel Port 50423, nicht genutzt, dann schieb ich darüber halt einen Trojaner ins Netz, oder halt über Port 80. Und das geht nur wenn es Schwachstellen in einer Anwendung zb Browser gibt?