Problem mit pureFTPd (Timeouts)

Dieses Thema im Forum "Allgemein" wurde erstellt von EvilD, 5. Feb. 2011.

  1. EvilD

    EvilD New Member

    Hallo Zusammen,

    vorweg möchte ich anmerken dass dies mein erster Kontakt mit Linuxservern ist und ich nicht alle Kommandos und Befehle kenne. Ich habe dieses HowTo verwendet und den Server frisch aufgesetzt.

    http://www.howtoforge.de/howto/der-perfekte-server-debian-lenny-debian-50-ispconfig-3/

    Soweit funktioniert auch alles super nur macht mir pureFTPd einige Probleme.


    Das Problem

    Die Verbindung zum FTP Server funktioniert einwandfrei. Wenn man nun aber Dateien hochläd, in meinem Beispiel das PHPKit, läd er auch einige Dateien ohne Probleme hoch aber nach einiger Zeit bleibt er stehen und der FTP Client verbindet neu mit einem Timeout.

    Dieses Verhalten ist sehr schwer nachzustellen da manchmal 600 Dateien problemlos hochgeladen werden und ein anderes Mal hat er schon nach 30 oder 60 Dateien die Timeout Probleme.

    Das Systemlog sagt folgendes.

    Datei: /var/log/messages

    Code:
    Feb  3 17:40:35 server1 pure-ftpd: (****@192.168.2.103) [INFO] Can't change directory to /web/admin: No such file or directory
    Feb  3 17:40:35 server1 pure-ftpd: (****@192.168.2.103) [NOTICE]  /var/www/clients/client0/web1//web/admin/index.php uploaded  (4851  bytes, 2878.00KB/sec)
    Feb  3 17:40:35 server1 pure-ftpd: (****@192.168.2.103) [NOTICE]  /var/www/clients/client0/web1//web/admin/popup_uploadlog.php uploaded   (2567 bytes, 1004.34KB/sec)
    Feb  3 17:40:35 server1 pure-ftpd: (****@192.168.2.103) [INFO] Can't  change directory to /web/admin/images: No such file or directory
    Feb  3 17:40:35 server1 pure-ftpd: (****@192.168.2.103) [NOTICE]  /var/www/clients/client0/web1//web/admin/images/action.png uploaded   (800 bytes, 902.20KB/sec)
    Feb  3 17:40:35 server1 pure-ftpd: (****@192.168.2.103) [NOTICE]  /var/www/clients/client0/web1//web/admin/images/add.png uploaded  (573  bytes, 669.24KB/sec)
    Feb  3 17:40:35 server1 pure-ftpd: (****@192.168.2.103) [NOTICE]  /var/www/clients/client0/web1//web/admin/images/ajax-loader.gif uploaded   (673 bytes, 791.90KB/sec)
    Feb  3 17:40:55 server1 pure-ftpd: (****@192.168.2.103) [INFO] Timeout (no new data for 900 seconds)
    Feb  3 17:40:55 server1 pure-ftpd: (?@192.168.2.103) [INFO] New connection from 192.168.2.103
    Feb  3 17:40:55 server1 pure-ftpd: (?@192.168.2.103) [INFO] **** is now logged in
    Feb  3 17:40:55 server1 pure-ftpd: (****@192.168.2.103) [INFO] Timeout (no new data for 900 seconds)
    Feb  3 17:40:55 server1 pure-ftpd: (?@192.168.2.103) [INFO] New connection from 192.168.2.103
    Feb  3 17:40:55 server1 pure-ftpd: (?@192.168.2.103) [INFO] **** is now logged in
    
    Nach den Timeouts ging bei einem Tests nichts mehr und im Log des FTP Clients erschien folgende Meldung:
    Code:
    Verbinde mit 93.***.***.***:21...
    Status: Verbindung hergestellt, warte auf Willkommensnachricht...Antwort: 421 Too many connections (5) from this IP
    

    Die Konfiguration

    Ich habe einige Werte wie z.B. MaxClientsPerIP testweise erhöht. Dies brachte allerdings auch keine Änderung.

    Code:
    MaxClientsNumber => 200
    MaxClientsPerIP => 200
    MaxIdleTime => 60
    NATmode => yes
    NoTruncate => yes
    PassivePortRange => 50000 65000
    Das Kuriose an den Timeout Meldungen ist ja, dass die Verbindung gerade mal 20-30 Sekunden zum Server hergestellt ist. Wie kann da schon ein Timeout nach 900 Sekunden kommen?

    Ich habe die Passiv Ports in der ISPConfig Firewall eingetragen. Habe diese an meinem Router weitergeleitet daran scheint es nicht zu liegen. Zwei weitere Personen haben versucht Daten auf den FTP von außerhalb zu laden, auch hier tritt das beschriebene Problem auf. Ich habe es bereits im Passiven sowie aktiven FTP Modus versucht, das Problem bleibt aber bestehen.

    Ich habe auf einem zweiten Rechner noch einmal eine minimale Debian Installation vorgneommen und nur pureftpd installiert. Auch hier tritt das selbe problem auf. Gleiches gillt für proFTPD auch hier tritt der besagte Fehler auf.

    Woran kann es also liegen? Es scheint ja Softwareunabhängig zu sein.

    Gruß
    Evil
     
    Zuletzt bearbeitet: 6. Feb. 2011
  2. Laubie

    Laubie Member

    meine erste Idee:
    Vielleicht dein Router?
     
  3. EvilD

    EvilD New Member

    Hallo,

    hm kann ich mir eigentlich nicht vorstellen. Ich habe auch mal auf meinem Windows Rechner den FileZilla FTP Server installiert und dort die Passiv Mode Ports 5000-5100 eingestellt und am Router freigegeben.

    Hier können von außerhalb sowie im Netzwerk problemlos Daten übertragen werden.
     
  4. Rolli-Ronny

    Rolli-Ronny New Member

    Das sieht so aus als ob der Server nicht genug gleichzeitiger Verbindungen aufbauen kann.
     
  5. EvilD

    EvilD New Member

    Danke für deine Antwort.

    Wie kann ich es denn am besten genauer untersuchen bzw. was kann ich da machen oder einstellen?
     
  6. Rolli-Ronny

    Rolli-Ronny New Member

    Eine möglichkeit wäre die maximale Verbindungen im FTP Programm zu erhöhen oder schaue mal in den Einstellungen vom FTP-Server ob es dort eine möglichkeit gibt dort etwas in der Richtung einzustellen.Welches FTP Programm nutz du zur Datenübertragung vom Rechner aus?
     
  7. EvilD

    EvilD New Member

    Habe leider nichts passendes gefunden. Habe hier eine Liste der Parameter gefunden http://www.nahaz.se/2010/07/pure-ftpd-config-file-options/

    Als FTP Client benutze ich FileZilla habe es aber auch schon mit der Windows eigenen FTP Verbindung sowie WinSCP versucht. Bei allen habe ich das selbe Problem.
     
  8. Rolli-Ronny

    Rolli-Ronny New Member

    Was du höchstens mal versuchen könntest wäre mit xpantispy(läuft soweit ich weiss auch mit Windows Seven)das Verbindungslimit deines Rechners zu erhöhen.

    Das wäre noch was mir dazu einfallen täte.Vielleicht haben ja die Fachmänner unter uns noch eine bessere Lösung deines Problems.
     
  9. EvilD

    EvilD New Member

    Danke, aber es hat leider auch keinen Erfolg gebracht. Wobei das Problem ja auch bei Bekannten mit anderen FTP Clients auftritt. Ist echt zum verzweifeln ;)
     
  10. Moestchen

    Moestchen New Member

    1. Hast du nach dem ändern der Einstellungen den pure-ftp restartet?
    2. Setze doch mal die gleichzeitigen Verbindungen pro IP auf 1.
    Was passiert dann?



    Edit:
    Die Ports dann natürlich noch in der Firewall in ISPc3 frei geben.

    Das ist erst einmal das, was ich auf die Schnelle gefunden habe.
    Hoffe es hilft weiter.


    Viele Grüße
     
    Zuletzt bearbeitet: 6. Feb. 2011
  11. EvilD

    EvilD New Member

    UPDATE

    Ich habe noch mal ein wenig getestet und die Uploadgeschwindigkeit des FTP Clients auf 40 KB/Sek festgelegt. Nun habe ich 400 Bilder genommen (ca. 200 KB im Durchschnitt) und diese hochgeladen. Verwendet wurden 2 paralelle Verbindugnen zum Upload. Alle Bilder sind problemlos hochgeladen worden.

    Das Selbe habe ich dann mit einer kompletten PHP Seite gemacht. Hier hingen die Uploas bereits nach 180 Dateien bis es wieder zum Timeout gekommen ist.

    Wäre es eventuell möglich das Linux probleme mit vielen Verbindungen hat? Mit größerne Dateien scheint das Problem ja nicht aufzutreten lediglich bei kleinen Dateien wie PHP, HTML, GIF usw.

    Gibt es irgendeine Möglichkeit die maximalen Verbindungen in Linux bzw. speziell Debian zu erhöhen? Oder ist hier eventuell etwas standardmäßig aktiv, dass so viele Verbindugnen abhalten soll?

    ------------------------------------------------------------------------------------------

    Hi,

    ja pureFTPD habe ich nach jeder Änderung neugestartet. Die PassivPorts hatte ich ja schon in der ISPConfig Firewall eingetragen und an pureFTPD übergeben wie in meinem ersten Post im Configteil angegeben.

    Ich habe MaxClientsPerIP jetzt auf 1 gesetzt und im FTP Client die Anzahl der gleichzeitigen Verbindungen ebenfalls auf 1 gesetzt. Das Verhalten bleibt gleich. Diesmal wurden 132 Dateien übertragen dann sagt das Log des FTP Clients wieder folgendes.

    Die Portangaben in ISPConfig 3 unter Firewall habe ich so an das Ende angehangen: ,50000:65000

    Code:
    Befehl:    PASV
    Antwort:    227 Entering Passive Mode (93,223,165,136,215,119)
    Befehl:    STOR success.gif
    Antwort:    150 Accepted data connection
    Antwort:    226-File successfully transferred
    Antwort:    226 0.298 seconds (measured here), 1.85 Kbytes per second
    Status:    Dateitransfer erfolgreich, 564 B in 1 Sekunde übertragen
    Status:    Starte Upload von C:\Programmierung\PHP\acp\images\xthumb.jpg
    Befehl:    PASV
    Antwort:    227 Entering Passive Mode (93,223,165,136,215,120)
    Befehl:    STOR xthumb.jpg
    Antwort:    150 Accepted data connection
    Status:    Sende Verbindungserhaltungs-Befehl
    Befehl:    NOOP
    Antwort:    200 Zzz...
    Fehler:    Zeitüberschreitung der Verbindung
    Fehler:    Dateitransfer fehlgeschlagen
    
    Danach verbindet sich der FTP Client neu und es erscheint die Meldung, dass die Datei bereits existiert und ob man sie überschreiben/fortsetzen usw. möchte.
     
    Zuletzt bearbeitet: 6. Feb. 2011
  12. Till

    Till Administrator

    Ich habe ein derartiges Problem bis jetzt nicht beobachtet. Ein paar hundert gleichzeitige FTP Verbindungen sind an sich kein Problem. Ich würde an Deiner Stelle die Limits die Du bei pure-ftpd eingetragen hast wieder rausnehmen, da dies beim FTP Client zu Problemen führen kann.

    Ist Deine Server denn ein Vserver? Dann kann es sein dass Dein Serveranbieter ein Limit in der Virtualisierungssoftware gesetzt hat,
     
  13. EvilD

    EvilD New Member

    Nein ich habe das HowTo nur mal hier zuhause mit einem zweiten Rechner getestet weil ich mich auch mal in Linux einarbeiten wollte. Die Limits hatte ich auch nur Testweise raufgesetzt. Ich glaube mittlerweile aber dass der Fehler irgendwo im Netzwerk liegen muss, da ich das Problem sogar haben wenn ich auf meinem Windows Rechner den FileZilla FTP Server installiere das gleiche Problem habe obwohl ich per 127.0.0.1 verbinde.
     
  14. EvilD

    EvilD New Member

    Hallo,

    ich habe nun meinen Root Server, da hat sich das Problem erledigt. Trotzdem danke für eure Hilfe. :)
     

Diese Seite empfehlen