n8n-io / n8n

Free and source-available fair-code licensed workflow automation tool. Easily automate tasks across different services.
https://n8n.io
Other
46.06k stars 6.49k forks source link

Error 550 when upload file to Freebox with FTP protocol #6635

Closed Marimax01 closed 1 year ago

Marimax01 commented 1 year ago

Describe the bug

I'm having a problem uploading pdf file via FTP on a Freebox with an external hard drive. I get the following error code and message: 550 unable to open /Freebox/Test for writing. I've tested reading and it works fine. The Test folder was created manually before the workflow.

To Reproduce Steps to reproduce the behavior:

  1. Create a node that allows you to have a file. In my case, I used GMAIL Events Trigger to download an attachment.
  2. Create an FTP node in Upload mode with path => /Freebox/Test and binary property => attachment_0
  3. See error

Expected behavior The expected result is that the email attachment is downloaded and sent to my Freebox so that I can access it whenever I want.

Environment (please complete the following information):

Additional context Add any other context about the problem here.

Joffcom commented 1 year ago

Hey @Marimax01,

This doesn't look like a bug to me, the 550 error is coming back from the FTP server and could be a permission issue.

Have you tried uploading to the same folder using something like FileZilla to confirm it works?

Marimax01 commented 1 year ago

Hey @Joffcom, thanks for your reply. Yes, I tried it and it works fine. On the Freebox there is only one user who has read and write rights.

In n8n the read operation works well as the List or download operation. And to my surprise, the rename operation also works well, so I was able to rename my test folder to test 2. I really only have one problem with Upload.

Joffcom commented 1 year ago

Hey @Marimax01,

That is odd I would expect the rename to fail, the other operations don't tend to involve write actions. Sadly though the ftp server is returning that 550 error so I would need more information from the ftp server logs to see why it is returning that.

I am also not entirely sure what Freebox is, do you have a link to it?

Marimax01 commented 1 year ago

@Joffcom

The Freebox is an internet box in France used by the ISP Free. I don't have access to the server log.

Sorry the links are in french. Here is the official website Here's a tutorial on how to activate FTP:

Marimax01 commented 1 year ago

@Joffcom

Here are the FTP server logs when I upload a file to the freebox. I don't use FileZilla but MobaXTerm is the same, it works very well.

Opening FTP connection to mafreebox.freebox.fr
FTP login with username freebox
<<<  220 Welcome to Freebox FTP Server.
>>>  USER freebox
<<<  331 User name okay, need password.
>>>  PASS ***********
<<<  230 User logged in, proceed.
>>>  FEAT
<<<  211-Extensions supported:
 UTF8
 EPRT
 EPSV
 REST STREAM
 SIZE
 CLNT
 AUTH TLS
 PBSZ
 PROT
211 End
>>>  CWD .
<<<  250 directory changed to /
>>>  PWD
<<<  257 "/"
>>>  CWD /
<<<  250 directory changed to /
>>>  PWD
<<<  257 "/"
Opening directory /...
>>>  PWD
<<<  257 "/"
>>>  CWD /
<<<  250 directory changed to /
>>>  TYPE A
<<<  200 Command Okay.
>>>  PASV
<<<  227 PASV OK (212,27,38,253,7,228)
>>>  LIST
<<<  150 File Status OK.
<<<  226 Closing data connection.
>>>  CWD /
<<<  250 directory changed to /
Directory / opened. Showing file list...
>>>  CWD .
<<<  250 directory changed to /
>>>  CWD /Freebox/
<<<  250 directory changed to /Freebox/
>>>  PWD
<<<  257 "/Freebox/"
Opening directory /Freebox/...
>>>  PWD
<<<  257 "/Freebox/"
>>>  CWD /Freebox/
<<<  250 directory changed to /Freebox/
>>>  TYPE A
<<<  200 Command Okay.
>>>  PASV
<<<  227 PASV OK (212,27,38,253,7,228)
>>>  LIST
<<<  150 File Status OK.
<<<  226 Closing data connection.
>>>  CWD /Freebox/
<<<  250 directory changed to /Freebox/
Directory /Freebox/ opened. Showing file list...
>>>  CWD .
<<<  250 directory changed to /Freebox/
>>>  CWD /Freebox/Test/
<<<  250 directory changed to /Freebox/Test/
>>>  PWD
<<<  257 "/Freebox/Test/"
Opening directory /Freebox/Test/...
>>>  PWD
<<<  257 "/Freebox/Test/"
>>>  CWD /Freebox/Test/
<<<  250 directory changed to /Freebox/Test/
>>>  TYPE A
<<<  200 Command Okay.
>>>  PASV
<<<  227 PASV OK (212,27,38,253,7,228)
>>>  LIST
<<<  150 File Status OK.
<<<  226 Closing data connection.
>>>  CWD /Freebox/Test/
<<<  250 directory changed to /Freebox/Test/
Directory /Freebox/Test/ opened. Showing file list...
>>>  CWD .
<<<  250 directory changed to /Freebox/Test/
Starting FTP transfer
Uploading file "D:\tmp\test.pdf" to "/Freebox/Test/test.pdf"
>>>  PWD
<<<  257 "/Freebox/Test/"
>>>  CWD /Freebox/Test
<<<  250 directory changed to /Freebox/Test/
>>>  CWD /Freebox/Test/
<<<  250 directory changed to /Freebox/Test/
>>>  TYPE I
<<<  200 Command Okay.
>>>  PASV
<<<  227 PASV OK (212,27,38,253,7,228)
>>>  STOR /Freebox/Test/test.pdf
<<<  150 File Status OK.
<<<  226 Closing data connection.
>>>  CWD .
<<<  250 directory changed to /Freebox/Test/
>>>  CWD /Freebox/Test/
<<<  250 directory changed to /Freebox/Test/
>>>  PWD
<<<  257 "/Freebox/Test/"
Opening directory /Freebox/Test/...
>>>  PWD
<<<  257 "/Freebox/Test/"
>>>  CWD /Freebox/Test/
<<<  250 directory changed to /Freebox/Test/
>>>  TYPE A
<<<  200 Command Okay.
>>>  PASV
<<<  227 PASV OK (212,27,38,253,7,228)
>>>  LIST
<<<  150 File Status OK.
<<<  226 Closing data connection.
>>>  CWD /Freebox/Test/
<<<  250 directory changed to /Freebox/Test/
Directory /Freebox/Test/ opened. Showing file list...
Joffcom commented 1 year ago

Hey @Marimax01,

Annoyingly server logs would be very handy, I also prefer FileZilla as it is standards compliant which makes life a lot easier.

What I can do is create a special build of n8n that has extra logging for the ftp node which might help, are you using docker or npm for running n8n?

Marimax01 commented 1 year ago

Hi,

Yes, I'd like to have them too :D

I use npm

Joffcom commented 1 year ago

Hey @Marimax01,

I am not too sure what to do with this one as I don't have a way to test any changes, Do you have access to the FTP server config it would be handy to know if BrokenClientsCompatibility is set assuming it is pureftpd based.

Marimax01 commented 1 year ago

Hello @Joffcom,

No, I don't have access to the FTP configuration, it's Free's property. Thanks for trying, I'm looking to make my own NAS server so I'll have less to worry about.