centos5下安装配置vsftpd,测试时出现如下的错误:
cannot change directory /var/www/webuser
421 Service not available,remote server has closed connection.
下面是具体的实验过程,供大家学习参考。
1.安装:rpm -Uvh vsftpd-xxxx-xxx.rpm
2.不改变配置文件,用匿名用户测试 ftp 127.0.0.1 ->user ftp pass aa@
登录成功。可以看到有pub目录。(注,ftp用户==anonymous)
3.新建用户,webftp,ftp组,主目录/var/www/webuser
(1)# useradd webftp -r -m -g ftp -d /var/www/webuser -c "WebFtp User"
# passwd webftp ##添加ftp账户与密码
(2)# chown webftp.ftp /var/www/webuser
# chmod 755 /var/www/webuser ## 改变目录所有者和权限
(3)测试: ftp 127.0.0.1 -> user webftp pass xxxxxx(你自己设置的密码)
结果:cannot change directory /var/www/webuser
421 Service not available,remote server has closed connection.
4.解决
(1)关掉selinux:
#vim /etc/selinux/config
将selinux=enforcing或permissive改成disabled。(有提示)
(2)设置防火墙,允许FTP服务通过
#system-config-securitylevel
选择FTP服务
(3)重启ftp服务:
# /etc/init.d/vsftpd restart
5.重新测试,登录成功,ok。