chris85
Goto Top

FileZilla Server mit FTPES

Hallo Kollegen,

ich hoffe ihr könnt mir bei einem Problem helfen, bei dem ich gerade wirklich nicht weiterkomme.

Ich habe eine Frage bezüglich der Datenkommunikation eines Filezilla Servers mit ftpes.

Der FTP-Server (FileZilla 0.9.44) steht in unserer DMZ.

Als Cleint-Software wird FileZilla 3.8.0 verwendet.

Die unverschlüsselte Kommunikation ist ohne Probleme möglich.

Die grundprinzipielle Kommunikation über FTPES funktioniert, jedoch bricht die Übertragung nach den ersten Dateien immer wieder ab.

Konfiguriert ist:

- passives FTP
- Ports die durch die Firewall an den FTP-Server weitergeleitet werden: 20, 21, 990, 55000 - 55020

Der Aufbau der Verbindung erfolgt über das Internet.

Im den nachfolgenden Logs ist die öffentliche Adresse des FTP-Servers 8.8.8.8

die öffentliche Adresse des Clients ist 11.11.11.11

Hier die Logs des Filezilla Servers:

FileZilla Server version 0.9.44 beta
Copyright 2001-2014 by Tim Kosse (tim.kosse@filezilla-project.org)
https://filezilla-project.org/
Connecting to server...
Connected, waiting for authentication
Logged on
(000001)23.04.2014 11:18:42 - (not logged in) (11.11.11.11)> Connected, sending welcome message...
(000001)23.04.2014 11:18:42 - (not logged in) (11.11.11.11)> AUTH TLS
(000001)23.04.2014 11:18:43 - (not logged in) (11.11.11.11)> 234 Using authentication type TLS
(000001)23.04.2014 11:18:43 - (not logged in) (11.11.11.11)> SSL connection established
(000001)23.04.2014 11:18:43 - (not logged in) (11.11.11.11)> USER it_test_ftp
(000001)23.04.2014 11:18:43 - (not logged in) (11.11.11.11)> 331 Password required for it_test_ftp
(000001)23.04.2014 11:18:43 - (not logged in) (11.11.11.11)> PASS ****
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)> 230 Logged on
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)> SYST
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)> 215 UNIX emulated by FileZilla
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)> FEAT
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)> 211-Features:
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)>  MDTM
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)>  REST STREAM
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)>  SIZE
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)>  MLST type*;size*;modify*;
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)>  MLSD
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)>  AUTH SSL
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)>  AUTH TLS
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)>  PROT
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)>  PBSZ
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)>  UTF8
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)>  CLNT
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)>  MFMT
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)> 211 End
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)> PBSZ 0
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)> 200 PBSZ=0
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)> PROT P
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)> 200 Protection level set to P
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)> PWD
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)> 257 "/" is current directory.  
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)> TYPE I
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)> 200 Type set to I
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)> PASV
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)> 227 Entering Passive Mode (8,8,8,8,214,216)
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)> MLSD
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)> 150 Opening data channel for directory listing of "/"  
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)> SSL connection for data connection established
(000001)23.04.2014 11:18:43 - it_test_ftp (11.11.11.11)> 226 Successfully transferred "/"  
(000002)23.04.2014 11:18:52 - (not logged in) (11.11.11.11)> Connected, sending welcome message...
(000002)23.04.2014 11:18:52 - (not logged in) (11.11.11.11)> AUTH TLS
(000002)23.04.2014 11:18:52 - (not logged in) (11.11.11.11)> 234 Using authentication type TLS
(000002)23.04.2014 11:18:52 - (not logged in) (11.11.11.11)> SSL connection established
(000002)23.04.2014 11:18:52 - (not logged in) (11.11.11.11)> USER it_test_ftp
(000002)23.04.2014 11:18:52 - (not logged in) (11.11.11.11)> 331 Password required for it_test_ftp
(000002)23.04.2014 11:18:52 - (not logged in) (11.11.11.11)> PASS ****
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> 230 Logged on
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> PBSZ 0
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> 200 PBSZ=0
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> PROT P
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> 200 Protection level set to P
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> CWD /
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> 250 CWD successful. "/" is current directory.  
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> PWD
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> 257 "/" is current directory.  
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> TYPE I
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> 200 Type set to I
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> PASV
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> 227 Entering Passive Mode (8,8,8,8,214,217)
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> STOR {B393C93A-AED8-4CE6-9031-C4164730793C}.crf
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> 150 Opening data channel for file upload to server of "/{B393C93A-AED8-4CE6-9031-C4164730793C}.crf"  
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> SSL connection for data connection established
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> 226 Successfully transferred "/{B393C93A-AED8-4CE6-9031-C4164730793C}.crf"  
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> PASV
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> 227 Entering Passive Mode (8,8,8,8,214,218)
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> MLSD
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> 150 Opening data channel for directory listing of "/"  
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> SSL connection for data connection established
(000002)23.04.2014 11:18:52 - it_test_ftp (11.11.11.11)> 226 Successfully transferred "/"  
(000002)23.04.2014 11:18:56 - it_test_ftp (11.11.11.11)> PASV
(000002)23.04.2014 11:18:56 - it_test_ftp (11.11.11.11)> 227 Entering Passive Mode (8,8,8,8,214,219)
(000002)23.04.2014 11:19:18 - it_test_ftp (11.11.11.11)> disconnected.



Die Logs des Clients:

Status:	Verbinde mit 8.8.8.8:21...
Status:	Verbindung hergestellt, warte auf Willkommensnachricht...
Antwort:	220 Welcome to FTP
Befehl:	AUTH TLS
Antwort:	234 Using authentication type TLS
Status:	Initialisiere TLS...
Status:	Überprüfe Zertifikat...
Befehl:	USER it_test_ftp
Status:	TLS/SSL-Verbindung hergestellt.
Antwort:	331 Password required for it_test_ftp
Befehl:	PASS ****
Antwort:	230 Logged on
Befehl:	SYST
Antwort:	215 UNIX emulated by FileZilla
Befehl:	FEAT
Antwort:	211-Features:
Antwort:	 MDTM
Antwort:	 REST STREAM
Antwort:	 SIZE
Antwort:	 MLST type*;size*;modify*;
Antwort:	 MLSD
Antwort:	 AUTH SSL
Antwort:	 AUTH TLS
Antwort:	 PROT
Antwort:	 PBSZ
Antwort:	 UTF8
Antwort:	 CLNT
Antwort:	 MFMT
Antwort:	211 End
Befehl:	PBSZ 0
Antwort:	200 PBSZ=0
Befehl:	PROT P
Antwort:	200 Protection level set to P
Status:	Verbunden
Status:	Empfange Verzeichnisinhalt...
Befehl:	PWD
Antwort:	257 "/" is current directory.  
Befehl:	TYPE I
Antwort:	200 Type set to I
Befehl:	PASV
Antwort:	227 Entering Passive Mode (8,8,8,8,214,216)
Befehl:	MLSD
Antwort:	150 Opening data channel for directory listing of "/"  
Antwort:	226 Successfully transferred "/"  
Status:	Anzeigen des Verzeichnisinhalts abgeschlossen
Status:	Verbinde mit 8.8.8.8:21...
Status:	Verbindung hergestellt, warte auf Willkommensnachricht...
Antwort:	220 Welcome to FTP
Befehl:	AUTH TLS
Antwort:	234 Using authentication type TLS
Status:	Initialisiere TLS...
Status:	Überprüfe Zertifikat...
Befehl:	USER it_test_ftp
Status:	TLS/SSL-Verbindung hergestellt.
Antwort:	331 Password required for it_test_ftp
Befehl:	PASS ****
Antwort:	230 Logged on
Befehl:	PBSZ 0
Antwort:	200 PBSZ=0
Befehl:	PROT P
Antwort:	200 Protection level set to P
Status:	Verbunden
Status:	Starte Upload von C:\test\120816\15556388\fltr\{B393C93A-AED8-4CE6-9031-C4164730793C}.crf
Befehl:	CWD /
Antwort:	250 CWD successful. "/" is current directory.  
Befehl:	PWD
Antwort:	257 "/" is current directory.  
Befehl:	TYPE I
Antwort:	200 Type set to I
Befehl:	PASV
Antwort:	227 Entering Passive Mode (8,8,8,8,214,217)
Befehl:	STOR {B393C93A-AED8-4CE6-9031-C4164730793C}.crf
Antwort:	150 Opening data channel for file upload to server of "/{B393C93A-AED8-4CE6-9031-C4164730793C}.crf"  
Antwort:	226 Successfully transferred "/{B393C93A-AED8-4CE6-9031-C4164730793C}.crf"  
Status:	Dateitransfer erfolgreich, 1.152 Bytes in 1 Sekunde übertragen
Status:	Empfange Verzeichnisinhalt...
Befehl:	PASV
Antwort:	227 Entering Passive Mode (8,8,8,8,214,218)
Befehl:	MLSD
Antwort:	150 Opening data channel for directory listing of "/"  
Antwort:	226 Successfully transferred "/"  
Status:	Anzeigen des Verzeichnisinhalts abgeschlossen
Status:	Starte Upload von C:\test\120816\15556388\fltr\{F1F4AF5E-0D28-4D04-9DA7-2377008D2C02}.crf
Befehl:	PASV
Antwort:	227 Entering Passive Mode (8,8,8,8,214,219)
Befehl:	STOR {F1F4AF5E-0D28-4D04-9DA7-2377008D2C02}.crf
Fehler:	Zeitüberschreitung der Verbindung
Fehler:	Dateitransfer fehlgeschlagen
Status:	Verbinde mit 8.8.8.8:21...

Da die grundlegende Kommunikation funktioniert kann dort erstmal nicht derFehler sein, nur warum bricht er die Kommunikation immer nach den ersten Übertragungen ab?

Ich habe die Konfiguration auch schon innerhalb unseres LANs getestet. Dort ist kein Fehler festzustellen.

Sollte es an der Firewall liegen, weiß ich nicht wie ich das konfigurieren sollte. Die notwendigen Ports werden mittels DNAT an den FTP-Server weitergeleitet.

Die Intrusion Detection habe ich auf der Firewall schon abgeschaltet, hatte aber nicht den gewünschten Erfolg.

Vielen Dank für eure Unterstützung.

Gruß

Chris

Content-Key: 236228

Url: https://administrator.de/contentid/236228

Ausgedruckt am: 29.03.2024 um 06:03 Uhr

Mitglied: colinardo
colinardo 23.04.2014 aktualisiert um 12:50:54 Uhr
Goto Top
Hallo Chris,
öffne mal ein paar mehr Ports für die Data-Connections in der Firewall, 20 Ports sind doch arg wenig (50 sollten normalerweise ausreichen), ein Programm kann gleich mehrere Data-Connections aufbauen so dass diese ziemlich schnell alle belegt sind. Diese werden auch nicht immer gleich nach dem Trennen freigegeben, deswegen testweise mal etwas mehr zur Verfügung stellen. Teste das mal.

Due to the nature of TCP (the underlying transport protocol), a port cannot be reused immediately after each connection. Hence the range of ports should not be too small or transfers of multiple small files can fail. A range of 50 ports should be sufficient in most cases.
Ansonsten häng dich mal mit Wireshark in die Verbindung am Server und/oder Client.

Grüße Uwe
Mitglied: Chris85
Chris85 23.04.2014 um 14:21:33 Uhr
Goto Top
Hi colinardo,

ich habe nun die Anzahl der Ports auf 51 (55000 - 55050) erhöht.

An dem Verhalten hat sich leider trotzdem nichts geändert.

Ich habe den Auszug aus dem FileZilla-Wiki schon mal gelesen.

Ich hatte nur gedacht, dass bei dem Fehler, der bei der zweiten zu übertragenden Datei auftritt noch nicht an der Anzahl der zur Verfügung stehenden Kanäle liegen kann.

Du hattest aber geschrieben, dass diese schon vor der eigentlichen Datenübertragung reserviert werden. Hab also wieder was dazu gelernt.

Bei weiteren Tests, die ich inzwischen durchgeführt habe, wurde mir folgende Meldung angezeigt:

(000009)23.04.2014 14:07:41 - it_test_ftp (11.11.11.11)> 425 Can't open data connection for transfer of "/120816/15319852"

Dies ist ja ein viel beschriebener Fehler. Kann aber leider bei der Konfiguration nicht erkennen, wo die Kommunikation über einen nicht freigegebenen Port laufen sollte.

Hast Du oder sonst jemand noch eine Idee?

Danke

Chris
Mitglied: colinardo
colinardo 23.04.2014 aktualisiert um 15:03:20 Uhr
Goto Top
Die entsprechenden Ports auf dem FTP-Servers sind sicherlich alle offen, hoffe ich mal.

Kann aber leider bei der Konfiguration nicht erkennen, wo die Kommunikation über einen nicht freigegebenen Port laufen sollte.
Den gerade verwendeten Port für die jeweilige Datenübertragung kannst du so herausbekommen: In dieser Zeile wird der Port für die Datenübertragung reserviert:
Antwort:	227 Entering Passive Mode (8,8,8,8,214,217)
Dabei stehen die ersten 4 Zahlen für die IP. Den verwendete Port berechnet man im Beispiel mit den letzten beiden Zahlen so:
214 x 256 + 217 = 55001

Ich würde auch zusätzlich mal die Firewall-Logs sowohl auf dem Router als auch auf dem FTP-Server checken.

Grüße Uwe
Mitglied: Chris85
Chris85 23.04.2014 um 15:08:47 Uhr
Goto Top
Hallo Uwe,

danke für deinen erneuten Post.

Das mit den Ports wusste ich schon. Im letzten Fall waren es

214*256+236 = 55020

Die Firewall habe ich vorübergehend deaktiviert, obwohl die Anwendung als Ausnahme bereits in der Firewall deklariert war.

Die Ports sind alle 1 zu 1 per DNAT auf den FTP-Server weitergeleitet.

Genau das ist mein Problem. Ich kenne zwar die angegebenen Lösungsmöglichkeiten, finde aber in meiner Konfiguration keinen Fehler.

Ich habe auch in einem weiteren Tutorial gelesen, dass mindestens 100 Ports freigegeben werden sollten?

Da Messdaten übertragen werden, habe ich sehr sher viele kleine Einzeldateien. Nichts desto trotz sollten 51 Datenports für die Übertragung ausreichen.

Da ich den Rechner schon im LAN ohen Probleme gestetet habe, kann es eigentlich nur noch an der Firewall liegen.

Dort habe ich aber, wie schon beschrieben, alle 1 zu 1 weitergeleitet.

bin gerade etwas ratlos.

Danke

Chris
Mitglied: Chris85
Chris85 25.04.2014 um 10:01:20 Uhr
Goto Top
Hi,

ich wollte nur kurz ein Statusupdate vermelden.

Ich habe den FTP-Server kurz aus der DMZ genommen und direkt ins LAN gehangen. Danachhat alles ohne Probleme funktioniert.

Der Fehler muss also an der Firewall liegen, die trotz der eingetratenen DNAT-Regeln Datenverkehr blockiert.

Ich habe in der Firewall schon temporär Intrusion Detection und sonstige Automatismen abgeschlatet. Es verbessert aber an der Situation nichts.

Lustigerweise werden die ersten beiden Vorgänge ausgeführt und danach bekomme ich folgenden Fehler:

227 Entering Passive Mode (8,8,8,8,214,221)
(000011)25.04.2014 09:47:41 - it_test_ftp (11,11,11,11)> RETR zipfldr.dll
425 Can't open data connection for transfer of "/..."  

Er hat also keinen Datenkanal für den weiteren Datenaustausch.

Das Portforwarding und die Ausnahmen sind aber soweit in der Firewall eingetragen.

Hat jemand von euch vielleicht schonmal ähnliche Erfahrungen machen müssen?

Eventuell hat ja jemand noch einen Tipp, was ich in der Firewall noch konfigurieren könnte damit das funktioniert? (Ich weiß, dass es auf die Hersteller, Softwareversion, ... ankommt).

Windows Firewall des FTP-Servers wurde temporär auch deaktiviert, hatte aber auch hier nicht den Erfolg gebracht.

Bin trotzdem für Hilfe dankbar.

Danke

Chris