1

hopefully someone will be able to shed some light on this one. We currently have a Pure-ftpd service installed on a RHEL6.5 server accepting connection from a client who drops files ever X hours.

Then, on random days, approx around 04h00 in the morning, they would drop 2x files at the same time, where one will be stored correctly, but the other one would just be 0 bytes in size, indicating a failure in the upload process. (note, clients drops files throughout the day exactly the same without any problems)

Here is some pure-ftpd logfiles for that period:

Jun 26 04:10:45 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [INFO] New connection from xxx.xxx.xxx.xxx
Jun 26 04:10:45 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [DEBUG] 220 This is a private system - No anonymous login
Jun 26 04:10:45 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [DEBUG] Command [auth] [TLS]
Jun 26 04:10:45 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [DEBUG] 234 AUTH TLS OK.
Jun 26 04:10:45 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [INFO] SSL/TLS: Enabled TLSv1/SSLv3 with RC4-SHA, 128 secret bits cipher
Jun 26 04:10:45 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [DEBUG] Command [pbsz] [0]
Jun 26 04:10:45 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [DEBUG] 200 PBSZ=0
Jun 26 04:10:45 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [DEBUG] Command [prot] [P]
Jun 26 04:10:45 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [DEBUG] 200 Data protection level set to "private"
Jun 26 04:10:45 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [DEBUG] Command [user] [Client_Login]
Jun 26 04:10:45 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [DEBUG] 331 User Client_Login OK. Password required
Jun 26 04:10:45 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [DEBUG] Command [pass] []
Jun 26 04:10:46 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [INFO] Client_Login is now logged in
Jun 26 04:10:46 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] 230 OK. Current restricted directory is /
Jun 26 04:10:46 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] Command [cwd] [/Incoming]
Jun 26 04:10:46 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] 250 OK. Current directory is /Incoming
Jun 26 04:10:46 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] Command [pasv] []
Jun 26 04:10:46 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] 227 Entering Passive Mode (123,123,123,123,60,245)
Jun 26 04:10:46 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] Command [type] [I]
Jun 26 04:10:46 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] 200 TYPE is now 8-bit binary
Jun 26 04:10:46 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] Command [stor] [SOME_FILE_1.psv]
Jun 26 04:10:46 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] 150 Accepted data connection
Jun 26 04:10:46 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [INFO] Logout.
Jun 26 04:10:46 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [INFO] New connection from xxx.xxx.xxx.xxx
Jun 26 04:10:46 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [DEBUG] 220 This is a private system - No anonymous login
Jun 26 04:10:46 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [DEBUG] Command [auth] [TLS]
Jun 26 04:10:46 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [DEBUG] 234 AUTH TLS OK.
Jun 26 04:10:46 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [INFO] SSL/TLS: Enabled TLSv1/SSLv3 with RC4-SHA, 128 secret bits cipher
Jun 26 04:10:46 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [DEBUG] Command [pbsz] [0]
Jun 26 04:10:46 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [DEBUG] 200 PBSZ=0
Jun 26 04:10:46 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [DEBUG] Command [prot] [P]
Jun 26 04:10:46 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [DEBUG] 200 Data protection level set to "private"
Jun 26 04:10:46 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [DEBUG] Command [user] [Client_Login]
Jun 26 04:10:46 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [DEBUG] 331 User Client_Login OK. Password required
Jun 26 04:10:46 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [DEBUG] Command [pass] []
Jun 26 04:10:46 server-name.com pure-ftpd: (?@xxx.xxx.xxx.xxx) [INFO] Client_Login is now logged in
Jun 26 04:10:46 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] 230 OK. Current restricted directory is /
Jun 26 04:10:46 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] Command [cwd] [/Incoming]
Jun 26 04:10:46 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] 250 OK. Current directory is /Incoming
Jun 26 04:10:46 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] Command [pasv] []
Jun 26 04:10:46 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] 227 Entering Passive Mode (123,123,123,123,60,245)
Jun 26 04:10:47 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] Command [type] [I]
Jun 26 04:10:47 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] 200 TYPE is now 8-bit binary
Jun 26 04:10:47 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] Command [stor] [SOME_FILE_2.psv]
Jun 26 04:10:47 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] 150 Accepted data connection
Jun 26 04:10:47 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [INFO] SSL/TLS: Enabled TLSv1/SSLv3 with RC4-SHA, 128 secret bits cipher
Jun 26 04:10:47 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [NOTICE] /home/clients/ftps/Client_Dir//Incoming/SOME_FILE_2.psv uploaded  (504 bytes, 82.11KB/sec)
Jun 26 04:10:47 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] 226-File successfully transferred
Jun 26 04:10:47 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] 226 0.006 seconds (measured here), 82.11 Kbytes per second
Jun 26 04:10:47 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] Command [quit] []
Jun 26 04:10:47 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [INFO] Logout.
Jun 26 04:10:47 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] 221-Goodbye. You uploaded 1 and downloaded 0 kbytes.
Jun 26 04:10:47 server-name.com pure-ftpd: (Client_Login@xxx.xxx.xxx.xxx) [DEBUG] 221 Logout.

And then you will notice the connection drops and the client then has to re-upload the file, which is successful. Note this only happens maybe twice a week, but still a big problems as these systems are all automated. We have tested that we do not have any network problem at any time this actually happens.

Any advice will be really appreciated on a fix or further investigations?

Castaglia
  • 3,239
  • 3
  • 19
  • 40
Lunix
  • 11
  • 2
  • We had a case like this once. Sender was actually uploading an empty file due to a flaw in the workflow on their end. – Kenster Jun 26 '14 at 10:47
  • Yeah, checked that, of course its never on the client side... that's just how it goes. Trying to clean our side. Simple answer is we checked it on their end, and looks fine. Must be on a networking side with ACK and FIN packets maybe? – Lunix Jul 01 '14 at 16:08
  • Did you find a solution @Lunix? – luissquall Mar 08 '16 at 22:39
  • In my case this was the problem solution: http://serverfault.com/questions/806959/ftp-upload-fails-only-for-some-files-on-centos-6-8/806961#806961 – Revious Oct 04 '16 at 12:55

0 Answers0