配置一个允许本地用户上传下载的FTP服务,且不允许匿名用户登录,用户锁定在当前家目录中。
我想说的是其实问题出在了SELinux的配置上,当关闭SELinux后问题就会消失,只是开启SELinux是非常必要的。
所以,我进行了如下操作:
# setsebool -P ftp_home_dir=1
# setsebool -P allow_ftpd_anon_write=1
最难是第三个命令,参考《[Linux服务器配置全程实录].张勤,杨章明》一书后第三条命令始终不对。幸得在“ ”上看到了相关的内容。
[Linux服务器配置全程实录].张勤,杨章明.扫描版 下载见
首先,使用命令
# ls -Zd /media/Data/document/
#看到加亮部分的结果:
drwxrwxrwx. doc ftp unconfined_u:object_r:file_t:s0 /media/Data/document/
[root@localhost vsftpd]# chcon -R -t public_content_rw_t /media/Data/document/
[root@localhost vsftpd]# ls -Zd /media/Data/document/
#加亮部分的结果产生了变化:
drwxrwxrwx. doc ftp unconfined_u:object_r:public_content_rw_t:s0 /media/Data/document/
[root@localhost vsftpd]# chcon -R -t public_content_rw_t /media/Data/document/
到这里问题也就解决了。
顺利实现了在SELinux开启的情况下允许FTP服务上传下载。
相关阅读: