我有一个可以完全访问设置的Web托管服务器。我是一名Web开发人员,因此FTP是我日常用于更新网站的工具。我正在使用FTP客户端,设置服务器信息后,当我尝试连接,当FTP客户端向服务器发送“ MLSD”命令时,我收到一条错误消息。
这里是客户端日志:
Status: Resolving address of si****.co (edited)
Status: Connecting to 74.208.***.***:21... (edited)
Status: Connection established, waiting for welcome message...
Response: 220 ProFTPD 1.3.3e Server (ProFTPD) [74.208.***.***] (edited)
Command: USER si***** (edited)
Response: 331 Password required for si*****
Command: PASS ********
Response: 230 User si***** logged in
Command: SYST
Response: 215 UNIX Type: L8
Command: FEAT
Response: 211-Features:
Response: MDTM
Response: MFMT
Response: TVFS
Response: UTF8
Response: MFF modify;UNIX.group;UNIX.mode;
Response: MLST modify*;perm*;size*;type*;unique*;UNIX.group*;UNIX.mode*;UNIX.owner*;
Response: LANG en-US*;fr-FR;it-IT;ja-JP;ko-KR;ru-RU;zh-CN;zh-TW;bg-BG
Response: REST STREAM
Response: SIZE
Response: 211 End
Command: OPTS UTF8 ON
Response: 200 UTF8 set to on
Status: Connected
Status: Retrieving directory listing...
Command: PWD
Response: 257 "/" is the current directory
Command: TYPE I
Response: 200 Type set to I
Command: PASV
Response: 227 Entering Passive Mode (74,208,*,*,149,88).
Command: MLSD
Error: Connection timed out
Error: Failed to retrieve directory listing
我不知道出了什么问题。我在不同服务器上使用的其他FTP帐户在同一FTP客户端软件上运行良好。.
我最近也偶然发现了这个问题。我没有发现在第一次Google搜索中找到的解决方案没有任何用处,但幸运的是,找到了自己的解决方案...
在“站点管理器”中,将“加密”更改为“仅使用纯FTP”,以前是“通过TLS使用显式FTP,如果可用”。
仅供参考,我之前尝试的修复方法是:
此问题有两种解决方法
将传输模式从默认更改为活动
使用SFTP-SSH文件传输协议。
两者都在站点管理器窗口中完成。我正在Windows 10上使用FileZilla Client的最新版本。更改这两者都不能解决我的问题!
检查您的ftp配置文件,取消注释并允许使用30000到35000的被动端口。
pasv_min_port=30000
pasv_max_port=35000
也将这些端口范围添加到防火墙TCP_IN
和TCP_OUT
(30000:35000)。
此问题是由防火墙阻止被动连接端口范围(纯FTP守护进程监听的位置)>
可以通过在pro-ftpd.conf文件中添加被动端口范围来解决此问题,如下所示
PassivePorts 60000 62000
确保在防火墙允许的传入端口的TCP_IN中打开了提到的被动端口范围
我在ubuntu上使用FileZilla时遇到了相同的错误。我通过以下步骤摆脱了错误:1.在FileZilla上,打开顶部的“站点管理器”选项卡,在右上角选择“传输设置”选项卡。2.在“传输设置”页面上,有三种传输模式:“默认”,“主动”和“被动”。选择“活动”。3.尝试重新连接。