FTP执行ls没有到主机的路由

问题遇到的现象和发生背景

vsftpd匿名用户可以登录,pwd、cd、mkdir都可以使用,服务端设置的被动模式,执行ls的时候提示
227 Entering Passive Mode (00,000,00,00,23,241).
ftp: connect: 没有到主机的路由

当然本机客户端登录服务端任何操作都可以

操作环境、软件版本等信息

centos7,vsFTPd 3.0.2

尝试过的解决方法

搜索了很多方法,验证了一些问题

1、客户端和服务端的防火墙都关了
2、服务端的iptables设置了6-7000的端口开放
3、vsfpfd也设置了被动模式,端口6000-7000
4、selinux也是disable

我想要达到的结果

正常上传下载文件

以下是一些可能会导致此问题的原因和建议的解决方法:

  1. 首先,您需要确保服务器的防火墙允许通过被动模式所使用的端口范围。您之前提到已经在iptables中开放了端口6000-7000,这是正确的。请确保没有其他安全组或防火墙规则阻止与这些端口的通信。您可以使用iptables -S命令来查看当前的防火墙规则。
  2. 您还需要确保FTP服务器的配置文件vsftpd.conf中的pasv_address参数设置为您的服务器的公网IP地址。此参数用于设置被动模式时发送给客户端的IP地址。确保将其设置为正确的IP地址,并重新启动vsftpd服务。
  3. 另外,还需要确保服务器的路由器或网络设备正确地将被动模式所需的端口转发到FTP服务器内部的IP地址。请参考您使用的路由器或网络设备的文档,了解如何进行端口转发设置。 当您确保以上步骤都正确配置后,重新连接并选择被动模式,然后尝试上传或下载文件。如果问题仍然存在,请检查FTP服务器的日志文件,查看是否有其他错误或警告信息。
    希望这些信息对您有所帮助,如果您有任何其他问题,请随时提问。