FTP不显示文件或目录

我能够login到FTP,但我没有看到任何文件或文件夹。

我的iptables看起来像这样

-Ainput-p udp -m udp -dport ftp-data -j ACCEPT
-Ainput-p udp -m udp –dport ftp -j ACCEPT
-A INPUT -p tcp -m tcp –dport https -j ACCEPT
-Ainput-p tcp -m tcp –dport http -j ACCEPT
-Ainput-p tcp -m tcp –dport ftp-data -j ACCEPT
-Ainput-p tcp -m tcp –dport ftp -j ACCEPT

当我从服务器本身ftp到本地主机时,出现以下错误:

230login成功。
远程系统types是UNIX。
使用二进制模式传输文件。
ftp>debugging
debugging(debugging= 1)。
ftp> ls
ftp:setsockopt(忽略):权限被拒绝
—> PASV
227进入被动模式(127,0,0,1,221,184)
—> LIST
这里是目录列表。
226目录发送确定。
FTP>

从被动变为主动给了我同样的错误:

ftp>被动
被动模式closures。
ftp> ls
ftp:setsockopt(忽略):权限被拒绝
—> PORT 127,0,0,1,233,166
200 PORT命令成功。 考虑使用PASV。
—> LIST
这里是目录列表。
226目录发送确定。
FTP>


被动模式不应该工作,因为我还没有打开或指定一个端口转换,但主动模式应该使用这些设置吗?

更新1

configuration文件VSFTPD:

anonymous_enable = NO
local_enable = YES
WRITE_ENABLE = YES
local_umask = 022
听= YES
log_ftp_protocol = YES
pam_service_name = VSFTPD
userlist_enable = YES
tcp_wrappers的= YES
xferlog_enable = YES
connect_from_port_20 = YES
xferlog_std_format = NO

另一个注意事项:我用我自己的用户login到/ home / user,并且看不到任何文件夹。 但是,当我cd /文件夹显示没有错误信息。

根据评论,禁用SELinux似乎解决了这个问题。 我现在build议:

  1. setenforce 1重新打开它。
  2. 使用ls -Z /path/to/ftp/home/folder来检查你正在尝试FTP的目录的上下文,看看上下文是否是“public_content_t”
  3. 如果没有,请使用restorecon(8)修复不正确的上下文,例如restorecon -R /path/to/ftp/home/folder