vsftpd的一点SELinux设置

 

正文

在开了SELinux和防火墙的情况下,使用chroot_local_user=YES锁定用户在自己的home目录中,没想到 vsftp的问题。FTP登录报错:500 OOPS: cannot change directory。

下面来看看产生这个问题的原因和对策。

原因

打开SELinux后,SELinux会阻止ftp daemon读取用户home目录。也就是说当ftp目录被锁定在home时FTP会报错: “500 OOPS: cannot change directory”。

无法进入目录,也就会出错退出。

解决方法

1、降低SELinux安全级别,把enforcing降低到permissive。

此方法有效,但不可取,会降低系统的安全程度。

2、修改SELINUX策略(推荐)。

getsebool -a | grep ftp

此命令可查看当前策略。

centos6显示如下:

 

 将ftp_home_dir设为on即可。

setsebool -P ftp_home_dir 1
service vsftpd restart

centos7中略有不同:

 

 将ftpd_full_access设为on即可。

posted @   書劍飄零  阅读(210)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示