CentOS 7 FTP 服务器无法列出根目录'/' 的解决方案
- 检查 FTP 服务是否正常运行
使用命令 systemctl status vsftpd.service 检查 FTP 服务是否正常运行。
- 检查 FTP 用户权限
确保 FTP 用户具有访问根目录('/')的权限。可以通过以下命令检查:
ls -ld /
如果权限不正确,可以使用以下命令更改:
chmod 755 /
- 检查 FTP 用户主目录
确保 FTP 用户的主目录正确配置,可以使用以下命令检查:
grep username /etc/passwd
其中 username 是 FTP 用户的用户名。
确保主目录正确设置为 FTP 用户的主目录,例如:
username:x:1001:1001:FTP User:/home/username:/bin/bash
- 检查 FTP 用户的访问权限
确保 FTP 用户具有访问其主目录的权限,可以使用以下命令检查:
ls -ld /home/username
如果权限不正确,可以使用以下命令更改:
chmod 755 /home/username
- 检查 FTP 用户的 SELinux 权限
如果系统启用了 SELinux,则需要确保 FTP 用户具有访问其主目录的 SELinux 权限。可以使用以下命令检查:
ls -Z /home/username
如果不是 ftp_home_t 类型,则可以使用以下命令更改:
chcon -t ftp_home_t /home/username
- 检查 FTP 服务器配置文件
确保 FTP 服务器配置文件(/etc/vsftpd/vsftpd.conf)中没有禁止访问根目录的设置。可以使用以下命令检查:
grep chroot_local_user /etc/vsftpd/vsftpd.conf
如果该行设置为 YES,则需要将其更改为 NO:
chroot_local_user=NO
- 重启 FTP 服务
完成上述步骤后,重启 FTP 服务以使更改生效:
systemctl restart vsftpd.service
如果仍然无法列出根目录,请检查 FTP 客户端设置,确保已正确指定 FTP 服务器地址和端口号。
原文地址: https://www.cveoy.top/t/topic/mSkW 著作权归作者所有。请勿转载和采集!