FTP连接错误:Failed to retrieve directory listing 解决办法

在服务器上用vsftp软件建立了FTP服务,但是在使用FillaZilla客户端连接该FTP时,却出现了如下的错误信息服务:

 代码如下 复制代码
Status:    Resolving address of smilejay.com
Status:    Connecting to 192.3.170.172:21...
Status:    Connection established, waiting for welcome message...
Response:    220 (vsFTPd 2.2.2)
Command:    USER anonymous
Response:    331 Please specify the password.
Command:    PASS **************
Response:    230 Login successful.
Command:    SYST
Response:    215 UNIX Type: L8
Command:    FEAT
Response:    211-Features:
Response:     EPRT
Response:     EPSV
Response:     MDTM
Response:     PASV
Response:     REST STREAM
Response:     SIZE
Response:     TVFS
Response:     UTF8
Response:    211 End
Command:    OPTS UTF8 ON
Response:    200 Always in UTF8 mode.
Status:    Connected
Status:    Retrieving directory listing...
Command:    PWD
Response:    257 "/"
Command:    TYPE I
Response:    200 Switching to Binary mode.
Command:    PAS
Response:    227 Entering Passive Mode (192,3,170,172,132,153).
Command:    LIST
Error:    Connection timed out
Error:    Failed to retrieve directory listing

简单排查原因,发现FTP 21端口也打开了的,防火墙也打开对TCP 21端口的访问,登录权限也是配置好了的。
后来,将iptables防火前关闭后,就可以正常了使用了。
但是,为什么呢?

在服务器端用 watch netstat -tnl 命令查看网络连接情况,然后用FileZilla去连接FTP,会看到某个时刻(其实是发送了PASV命令后),服务器端会看到多了一个奇怪的IP端口连接,连接好后就消失了。
其实,这是FTP passive mode 和 active mode 的区别(不细说了看后面的参考资料吧),然后FileZilla默认使用的是passive mode(当然自己也可以去“设置”中更改)。

当然,我前面说将iptables关闭了,我也想重新把iptables重新启用,那么怎么设置访问哪个端口的规则呢?
当使用passive模式时,FTP服务器端会使用一个TCP端口,可通过下面的来配置:

 代码如下 复制代码

pasv_enable=YES  # default YES. When enabled, passive mode connects are allowed.
pasv_min_port=9900
pasv_max_port=9903
port_enable=YES   # default NO. When enabled, active mode connects are allowed.

然后将9900、9901、9902、9903等4个端口的访问权限都在iptables中打开即可。

时间: 2024-08-02 12:42:34

FTP连接错误:Failed to retrieve directory listing 解决办法的相关文章

WIN7系统网络故障 本地连接没有有效的ip配置的解决办法

最近笔者从各大IT论坛了解到大量网民遇到了这样一个网络问题,电脑无法连接网络,使用自带网络诊断工具诊断提示:"本地连接没有有效的ip配置"这种网络故障多数是出在使用路由器共享上网的windows 7操作系统中,windows 7系统是目前最主流的操作系统,之前也遇到过不少网络故障,不过只要大家熟悉windows 7系统,对于解决类似本地连接没有有效的ip配置错误提示故障一般可以迎韧解决. 网络诊断提示"本地连接没有有效的ip配置"故障遇到网络诊断提示"本地

Android Gradle Build Error:Some file crunching failed, see logs for details解决办法

Android Gradle Build Error:Some file crunching failed, see logs for details解决办法 错误日志:Error:java.lang.RuntimeException: Some file crunching failed, see logs for details Log: FAILURE: Build failed with an exception. * What went wrong: Execution failed

phpStorm打开提示 failed to create JVM 的解决办法

phpStorm 软件打开运行提示 failed to create JVM的解决办法. 修改文件 D:\Program Files (x86)\JetBrains\PhpStorm 7.1.3\bin\PhpStorm.exe.vmoptions 把内存值改成标准值,文件全部内容如下: -server -Xms128m -Xmx512m -XX:MaxPermSize=250m -XX:ReservedCodeCacheSize=64m -ea -Dsun.io.useCanonCaches=

Win8.1通过手机连接WiFi热点会发生蓝屏的解决办法

Win8.1通过手机连接WiFi热点会发生蓝屏的解决办法   原因分析: Intel 的网卡驱动中的无线信号传输协议(802.11n模式)与某些手机WIFI热点的信号模式冲突导致,与无线网卡驱动的版本没多少关系. 解决方法: 1.在"设备管理器"中找到无线网卡"属性"中"高级"下"802.11n模式"的值改为"已禁用"; 2.保存后重启网卡即可解决.

无线网络连接不上的五大原因和解决办法

笔记本电脑无线网络连接不上的五大原因和解决办法:无线網絡的发展和普及尤其是无线局域网丰富了我们的生活,让我们的生活变得越来越便利了.同时提供随时即用.高速优质的網絡服务.但是.由于无线信道特有de性质.使得无线網絡连接具有不稳定性.大大影响了服务质量.你是否经常遇到自己笔记本电脑连接不上无线網絡.而其它笔记本电脑却可正常连接de情况.今天.笔者就以飞鱼星路由器为例具体介绍原因及解决办法. 第一.启动混合模式 设置无线路由后.若新de笔记本电脑(11n无线网卡)可以连入无线網絡.旧de笔记本(11

为什么连接EC2那么卡?有什么解决办法?

问题描述 如题:为什么连接EC2那么卡?有什么解决办法? 解决方案 解决方案二:我现在是用阿里云ECS做跳板机连接的EC2,直接连卡爆了,不知道为什么那么卡.解决方案三:只能忍了,运营商出口带宽不够我用的是日本的vps作跳板解决方案四:引用2楼aws0to1的回复: 只能忍了,运营商出口带宽不够我用的是日本的vps作跳板 用日本的VPS作跳板延时大么?解决方案五:从中国到日本icmp_seq=4ttl=48time=84.717ms从日本到us-east-1icmp_seq=2ttl=49tim

百度地图API提示230 错误app scode码校验失败的解决办法

笔者近2天在 Android Studio上玩了一下百度地图,碰到了常见的"230错误 APP Scode校验失败",下面我来介绍一下具体的解决办法. 1.在andriodstudio上部署百度地图的规范.把下载下来的SDK解压,切换至Project视图.复制以下3个文件到libs文件下. 跟我申请AK时候sha1完全不一样.所有地图只显示方格子,没有地图加载.并提示"230错误 APP Scode校验失败".去API控制台修改SHA1与Logcat对应,地图加载成

FTP连接错误:PASV模式失败&数据socket 错误

之前用VirtualBox搭建的win2003,现在还是会偶尔用用的,测试IIS下的FTP及asp,as.net是非常必要的.之前用IIS管理器搭建好FTP后,在Host机用flashfxp连接虚拟机时,总是会有一些错误,表现为: ◦FTP连接很慢,按理说都是同一个内网,速度是飞快才对的 ◦数据Socket 错误: 连接超时 ◦PASV模式失败 查了查.原来问题是出在VirtualBox的网络连接方式,与FTP的传输协议PASV模式及PORT模式有关.具体原因看不懂了,太深了,反正按步骤设置成功

ASP.NET运行时错误“ 分析器错误信息: 访问被拒绝 ”的解决办法

asp.net|错误|访问|解决 这个问题困惑了我好久,终于在网上找到了解决办法,有以下三种,推荐使用第二种. (1)  这个不是控件的问题,   关掉索引服务后就好了,  关掉他两种方法: (一)可以在MS-DOS下输入 Net stop cisvc 命令禁止! (二)可以通过进入 控制面板-〉管理工具-〉服务,找到Indexing Service并点击右键将其停止.   (2) 其中最常见的原因是Indexing service服务引起的.解决方法就是停用Indexing service,或