Estou usando a biblioteca Rebex FTP c# e estou tentando baixar um único arquivo de um site FTP público. Todos os outros arquivos neste site FTP podem ser baixados, exceto um arquivo específico.
Sempre que tento baixar o arquivo, recebo um erro 550 Acesso negado.
Do violinista:
HTTP/1.1 504 HTTP-FTP Gateway failed
Content-Length: 606
Fiddler was unable to act as a HTTP-to-FTP gateway for this
response.
550 Permission denied.
Passei a usar System.Net.FtpWebRequest na tentativa de obter mais informações sobre o erro (sei que não é recomendado para uso real. Ainda recebo o mesmo erro 550 acesso negado neste arquivo específico. Este erro é retornado consistentemente sempre que tentamos baixar o arquivo, e não apenas um ou dois erros.
Também recebo um erro 550 de acesso negado ao acessar o site público por meio do Windows Explorer, IE e Chrome.
Entrei em contato com o administrador do site FTP e eles alegaram que não há nada de errado com seu sistema e que meu IP não foi bloqueado.
Acessamos o sistema anonimamente, pois é um site FTP público. Quando acessamos o arquivo de fora do IP da rede da minha empresa (por exemplo, de um computador doméstico) o arquivo fica disponível para download.
Às vezes, quando reinicio o servidor que está executando o aplicativo que faz download do site FTP, posso baixar o arquivo em questão, mas outras vezes, reinicializar o servidor não resolve o problema. Também posso executar o aplicativo em um servidor fora de nossa rede principal e o arquivo estará disponível para download. Parece que nosso IP está bloqueado apenas para este arquivo específico.
Estou procurando pistas neste momento. Os administradores de FTP estão dizendo que isso é algo da nossa parte, mas todos os outros arquivos estão disponíveis para download. Independentemente da hora do dia, o arquivo em questão retorna um erro 550 acesso negado, o que significa que não estamos tendo azar e tentando baixar o arquivo enquanto o site está bloqueado para atualização.
Edit2: O servidor foi reinicializado e o arquivo está sendo baixado com sucesso a partir de agora. Aqui está um arquivo de log de um download bem-sucedido usando Rebex.Net:
2019-08-20 08:23:29.143 Opening log file.
2019-08-20 08:23:29.688 INFO Ftp(1) Info: Connecting to pubftp.spp.org:21 using Ftp 3.0.4086.0.
2019-08-20 08:23:29.689 INFO Ftp(1) Info: Using proxy none.
2019-08-20 08:23:29.884 DEBUG Ftp(1) Info: Connection succeeded.
2019-08-20 08:23:29.939 INFO Ftp(1) Response: 220-This system is restricted solely to <clip>...
2019-08-20 08:23:29.939 INFO Ftp(1) Response: 220-
2019-08-20 08:23:29.939 INFO Ftp(1) Response: 220 Use anonymous as user and email address as password.
2019-08-20 08:23:30.682 INFO Ftp(1) Command: USER anonymous
2019-08-20 08:23:30.733 INFO Ftp(1) Response: 331 Password required for anonymous.
2019-08-20 08:23:30.734 INFO Ftp(1) Command: PASS ************
2019-08-20 08:23:30.787 INFO Ftp(1) Response: 230 Login OK. Proceed.
2019-08-20 08:23:30.788 INFO Ftp(1) Command: FEAT
2019-08-20 08:23:30.838 INFO Ftp(1) Response: 211-Features supported:
2019-08-20 08:23:30.838 INFO Ftp(1) Response: COMB target;source_list
2019-08-20 08:23:30.838 INFO Ftp(1) Response: REST STREAM
2019-08-20 08:23:30.838 INFO Ftp(1) Response: SIZE
2019-08-20 08:23:30.838 INFO Ftp(1) Response: MDTM
2019-08-20 08:23:30.838 INFO Ftp(1) Response: MFMT
2019-08-20 08:23:30.838 INFO Ftp(1) Response: XCRC filename;start;end
2019-08-20 08:23:30.838 INFO Ftp(1) Response: SSCN
2019-08-20 08:23:30.838 INFO Ftp(1) Response: MLST Size*;Modify*;Create;Type*;Unique;Perm*;Lang;Media-Type;CharSet;
2019-08-20 08:23:30.838 INFO Ftp(1) Response: MODE Z
2019-08-20 08:23:30.838 INFO Ftp(1) Response: XNOP
2019-08-20 08:23:30.838 INFO Ftp(1) Response: UTF8
2019-08-20 08:23:30.838 INFO Ftp(1) Response: UTF-8
2019-08-20 08:23:30.838 INFO Ftp(1) Response: LANG EN*
2019-08-20 08:23:30.838 INFO Ftp(1) Response: CLNT
2019-08-20 08:23:30.838 INFO Ftp(1) Response: 211 END
2019-08-20 08:23:30.841 INFO Ftp(1) Command: SYST
2019-08-20 08:23:30.892 INFO Ftp(1) Response: 215 UNIX Type: L8
2019-08-20 08:23:30.892 INFO Ftp(1) Command: OPTS UTF8 ON
2019-08-20 08:23:30.942 INFO Ftp(1) Response: 200 Entering UTF-8 mode.
2019-08-20 08:23:31.658 DEBUG Ftp(1) Info: Starting data transfer.
2019-08-20 08:23:31.658 INFO Ftp(1) Command: TYPE I
2019-08-20 08:23:31.707 INFO Ftp(1) Response: 200 Type set to I.
2019-08-20 08:23:31.709 INFO Ftp(1) Command: PASV
2019-08-20 08:23:31.761 INFO Ftp(1) Response: 227 Entering Passive Mode (198,22,157,51,217,109)
2019-08-20 08:23:31.768 DEBUG Ftp(1) Info: Establishing data connection to 198.22.157.51:55661.
2019-08-20 08:23:31.821 INFO Ftp(1) Command: RETR /operational_data/ACE/ACE.csv
2019-08-20 08:23:31.880 INFO Ftp(1) Response: 150 Opening BINARY mode data connection for /operational_data/ACE/ACE.csv.
2019-08-20 08:23:32.015 DEBUG Ftp(1) Info: Data transfer ended. 3528 bytes transferred.
2019-08-20 08:23:32.017 DEBUG Ftp(1) Info: Closing downloading data connection.
2019-08-20 08:23:32.018 DEBUG Ftp(1) Info: Waiting for data transfer ending message.
2019-08-20 08:23:32.018 INFO Ftp(1) Response: 226 Transfer complete. 3528 bytes transferred. 3528 bps.
2019-08-20 08:23:32.018 DEBUG Ftp(1) Info: Data transfer ended.
2019-08-20 08:23:32.018 DEBUG Ftp(1) Info: Transfer ended successfully.
2019-08-20 08:23:32.018 DEBUG Ftp(1) Info: Data connection closed.