本文共 1632 字,大约阅读时间需要 5 分钟。
这里不讲vsftpd的基本配置,网上教程已经太多了。这里只说seLinux的问题。
日前在CentOS6.5中安装了vsftpd,按照网上搜索的教程,配置好/etc/vsftpd/vsftpd.conf,重新启动后,登录实验,又出现了著名的不能设置主目录错误:
500 OOPS: cannot change directory:/home/*******500 OOPS: child died
再到网上求助,发现多数都是让关掉seLinux服务,我记得以前也是这么做得,不过总觉得是有点因噎废食。于是继续google
终于看到了这篇文章,但是照做时却被提示错误:
#setsebool -P ftpd_disable_trans 1Boolean ftpd_disable_trans is not defined
于是查询selinux
发现确实没有该项,但是却意外发现了ftp_home_dir,于是我照方抓药执行
setsebool -P ftp_home_dir 1
在查询一下,发现状态已经成功改过来了!
重新启动vsftpd
#service vsftpd restart
[root@rusky xxxx]# service vsftpd restart --启动/关闭命令为:service vsftpd start/stop
Shutting down vsftpd: [FAILED] Starting vsftpd for vsftpd: [ OK ][root@rusky xxx]# service vsftpd status
[root@rusky xxxx]# service vsftpd restart
解决方法:
第一步,
打开/etc/vsftpd/vsftpd.conf,做如下配置:
anon_root=/home/pageftp/open #guest_username=用户名 #virtual_use_local_privs=YES #userlist_file=/etc/vsftpd/user_list #user_config_dir=/ect/vsftpd/vconf #chroot_local_user=YES #allow_writeable_chroot=YES virtual_use_local_privs=YES #guest_enable=YES #guest_username=vftpuser chroot_local_user=YES chroot_list_enable=YES #chroot_list_file=/etc/chroot_list allow_writeable_chroot=YES user_config_dir=/usr/local/apache/htdocs/ local_root=/usr/local/apache/htdocs/第二步
进行如下设置
sestatus -b | grep ftp
setenforce 0 setenforce: SELinux is disabled [root@xx vsftpd]# getenforce Disabled [root@xx vsftpd]# setsebool -P ftp_home_dir=1 setsebool: SELinux is disabled. [root@xx vsftpd]# setsebool -P allow_ftpd_full_access 1 setsebool: SELinux is disabled.
转载地址:http://glfni.baihongyu.com/