问题原因概述
FTP连接成功后无法查看文件列表的现象通常与数据通道建立失败有关,主要涉及网络端口配置、传输模式冲突、防火墙策略或服务权限限制。客户端与服务端需通过控制端口(21)和数据端口(主动模式20/被动模式动态端口)完成通信,任一环节异常均可能导致目录列表读取失败。
网络配置检查
需优先验证以下网络参数:
- 确保FTP服务器开放21控制端口及55536-55567被动模式端口范围
- 通过
telnet [IP] 21
测试控制端口连通性 - 检查路由器是否映射TCP 20/21及被动端口到内网服务器
若外网无法访问而内网正常,可能因NAT未正确配置公网IP映射。
FTP模式调整
主动模式(PORT)与被动模式(PASV)的选择直接影响数据传输:
- 主动模式:服务端主动连接客户端端口,需开放客户端高位端口
- 被动模式:客户端连接服务端动态端口,需配置服务器被动端口范围
建议在FileZilla等客户端切换模式测试,企业网络通常需禁用被动模式。
防火墙与SELinux设置
按顺序执行以下排查:
- 临时关闭服务器/客户端防火墙测试连通性
- 在Linux服务器运行
setenforce 0
禁用SELinux - 永久关闭SELinux需修改
/etc/selinux/config
文件
权限与服务验证
排查步骤包括:
- 检查vsftpd配置中
local_enable=YES
和write_enable=YES
- 确认用户对目标目录有读取权限
- 使用
getsebool ftpd_disable_trans
验证SELinux策略
该问题的解决需系统性排查网络配置、传输模式、安全策略及权限设置。建议优先使用专业客户端(如FileZilla)进行模式切换测试,同时结合服务器日志定位具体错误代码。对于云服务器,还需确认安全组放行被动端口范围。
本文由阿里云优惠网发布。发布者:编辑员。禁止采集与转载行为,违者必究。出处:https://aliyunyh.com/470350.html
其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。