他的系统是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
由于操作系统一旦重启后,这种设置需要重新设置,这里使用-P参数实现.
//setsebool使用-P参数,无需每次开机都输入这个命令
# setsebool -P ftpd_disable_trans 1
# setsebool -P ftp_home_dir 1
//查看当前状态是否是on的状态
# getsebool -a|grep ftp
ftpd_disable_trans --> on
ftp_home_dir-->on
# service vsftpd restart
有关selinux的配置
如关闭,仅仅警告,强制等等 需要编辑/etc/sysconfig/selinux 默认是强制。
1.553 Could not create file
一般都是SELinux的问题,设置SELinux的一个值,重启服务器即可。
setsebool -P ftpd_disable_trans 1
service vsftpd restart
2.500 OOPS: bad bool value in config file for: write_enable
注意你的CentOS FTP服务文件中保证每一行最后没有任何空格,一般出错就是在多余的空格上。
打开/etc/selinux/config
将selinux=enforcing 改成 permissive 或 disabled。
•enforcing强制模式,只要SELinux不允许,就无法执行;
•permissive警告模式,将该事件记录,依然允许执行;
•disabled关闭SELinux;
•停用、启用需要重启计算机;
•使用setenforce切换enforcing与permissive模式不需要重启计算机;
•getenforce及sestatus查看执行模式;
关闭selinux命令:setenforce 0
我的FTP无法访问提示ftp: connect :未知错误号
以前问过这个问题,朋友们说是LINUX的防火墙没有关闭
请问在字符方式下如何关闭我LINUX上的防火墙?
yongpeng
我的FTP无法访问提示ftp: connect :未知错误号
service iptables stop
or
/etc/rc.d/init.d/iptables stop
nios
我的FTP无法访问提示ftp: connect :未知错误号
谢谢你了,
LINUX 默认会起这个防火墙吗??
顺便说一下刚才发现一个查看服务的命令
/sbin/service --status-all
ftp:connect:未知错误号
可能的原因是ftp服务没有真正启动成功,可以做以下几步
1、查看两台机器间能否ping通
2、关闭防火墙:service iptables stop (也可以chkconfig iptables off 这样启动是就关闭了,其他服务类似)
3、查看21端口,有没有被其他暂用:netstat -ano | grep 21
如果被暂用,就修改ftp的默认端口