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即可。
作者:書劍飄零
本文版权归作者和博客园所有,欢迎转载,但未经作者同意,必须保留此段声明,且在文章页面醒目位置显示原文连接,否则保留追究法律责任的权利。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端