1. 检查 FTP 服务是否正常运行

使用命令 systemctl status vsftpd.service 检查 FTP 服务是否正常运行。

  1. 检查 FTP 用户权限

确保 FTP 用户具有访问根目录('/')的权限。可以通过以下命令检查:

ls -ld /

如果权限不正确,可以使用以下命令更改:

chmod 755 /
  1. 检查 FTP 用户主目录

确保 FTP 用户的主目录正确配置,可以使用以下命令检查:

grep username /etc/passwd

其中 username 是 FTP 用户的用户名。

确保主目录正确设置为 FTP 用户的主目录,例如:

username:x:1001:1001:FTP User:/home/username:/bin/bash
  1. 检查 FTP 用户的访问权限

确保 FTP 用户具有访问其主目录的权限,可以使用以下命令检查:

ls -ld /home/username

如果权限不正确,可以使用以下命令更改:

chmod 755 /home/username
  1. 检查 FTP 用户的 SELinux 权限

如果系统启用了 SELinux,则需要确保 FTP 用户具有访问其主目录的 SELinux 权限。可以使用以下命令检查:

ls -Z /home/username

如果不是 ftp_home_t 类型,则可以使用以下命令更改:

chcon -t ftp_home_t /home/username
  1. 检查 FTP 服务器配置文件

确保 FTP 服务器配置文件(/etc/vsftpd/vsftpd.conf)中没有禁止访问根目录的设置。可以使用以下命令检查:

grep chroot_local_user /etc/vsftpd/vsftpd.conf

如果该行设置为 YES,则需要将其更改为 NO

chroot_local_user=NO
  1. 重启 FTP 服务

完成上述步骤后,重启 FTP 服务以使更改生效:

systemctl restart vsftpd.service

如果仍然无法列出根目录,请检查 FTP 客户端设置,确保已正确指定 FTP 服务器地址和端口号。

CentOS 7 FTP 服务器无法列出根目录'/' 的解决方案

原文地址: https://www.cveoy.top/t/topic/mSkW 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录