centos vsftp 500 OOPS: cannot change directory:/home/ftp

系统是CentOS,是RH派系的。我把vsftpd安装配置好了,以为大功告成,但客户端访问提示如下错误:

500 OOPS: cannot change directory:/home/ftp

原因是他的CentOS系统安装了SELinux,因为默认下是没有开启FTP的支持,所以访问时都被阻止了。

//查看SELinux设置

# getsebool -a|grep ftp

ftpd_disable_trans --> off

或者

ftp_home_dir-->off

解决方法:

//使用setsebool命令开启

# setsebool ftpd_disable_trans 1

或者

# setsebool ftp_home_dir 1

//再次查看当前状态是否是on的状态

# getsebool -a|grep ftp

ftpd_disable_trans --> on

或者

ftp_home_dir-->on

//setsebool使用-P参数,无需每次开机都输入这个命令

# setsebool -P ftpd_disable_trans 1

或者

# setsebool -P ftp_home_dir 1

# service vsftpd restart

有关selinux的配置

如关闭,仅仅警告,强制等等 需要编辑/etc/sysconfig/selinux 默认是强制