Linux中使用FlashFXP连接FTP,卡在“正在列目录” [R] MLSD问题的解决方法

  使用百度云修改FTP端口后,使用FlashFXP连接FTP,会卡在“正在列目录”,当时的执行命令是 MLSD,开始怀疑是防火墙的问题。

  后来百度云工程师测试,使用 CuteFTP则能正常上传下载,无此问题。于是怀疑是FTP软件问题。

  而FlashFXP无论修改主动模式或被动模式均无法解决此问题。

  原因一:列目录命令问题导致卡在“正在列目录”

  解决方法:

  修改站点->站点管理器->FTP->列表命令 改为 STAT -L 问题解决。

image.png

  原因二:windows2012防火墻拦截FTP,提示“无法取得目录列表”

  文件服務器:filezilla文件服務器

  客戶端:国内免费的ftp客户端软件8uftp

  問題:用戶可以登錄,但是提示“无法取得目录列”

  問題描述:關閉防火墻以後就正常登錄成功,打開防火墻以後就提示“无法取得目录列”。

  初步解決:雖然我在防火墻放開了21端口,也按照網上說的在防火墻中增加了c:\windows\system32\intersrv\inetinfo.exe,但是仍然提示“无法取得目录列”。

  最終解決:在FileZilla的setting->Passive mode setting->User custom port range:30015-30018,如下图:

  这个问题的根本原因是:FTP首次连接端口21认证账号密码后,会开启新的用于传输数据的非21端口(也不一定是21,可以修改),而数据端口默认是被阻挡的。

  所以,FTP卡在“正在列目录”终极解决方法是:

  1、设置FTP Server的端口范围为一个固定值,如 30000-30100 (范围量大于并发量即可)

  2、在防火墙里,允许这个范围的端口可以连接(除了在服务器内设置,阿里云等还需要在安全组添加这个端口范围)。

  感谢 小帽 的CSDN 博客提供的解决方法:https://blog.csdn.net/dingmao6790229/article/details/46413951