问题描述:

Filezilla连接宝塔面板的FTP服务器报错,报错提示如下:

错误:服务器发回了不可路由的地址,使用服务器地址代替/读取目录列表失败

状态: 连接建立,等待欢迎消息…

状态: 已登录

状态: 读取目录列表…

状态: 服务器发回了不可路由的地址。使用服务器地址代替


问题分析

Linux pure-ftpd服务器端:

先报“服务器发回了不可路由的地址,使用服务器地址代替”,网上大部分方法是Fliezilla 修改连接的被动模式为“退回到主动模式(F)”,然后报“读取目录列表失败”。

实际上是端口不通导致的,主要是现在的云主机安全性比较高,端口大部分没开导致。


解决方法:

1、 Linux端, 查看Pure-Ftpd 配置 PassivePortRange(被动模式端口范围)的选项,记录端口号,默认一般是39000-40000,然后在云主机控制台防火墙加入39000-40000通过。

2、Windows端, 打开FTP服务器设置程序FileZilla_Server_Interface.exe,点开设置,端口默认是3000-4000,这边我为了和Linux设置的统一,改为了39000-40000,然后在云主机控制台防火墙加入39000-40000通过。

182-1.png

3、如果经过上述修改 还会报错“服务器发回了不可路由的地址。使用服务器地址代替”,这是很多服务器用的是内网ip,公网ip是nat过来的,所以需要把ForcePassiveIP启用,并把ip地址改成公网ip,重启ftp服务。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。