您的位置:首页 > 编程语言 > PHP开发

VSFTPD不能创建文件或者显示不出目录

2012-04-20 15:21 537 查看
VSFTPD /etc/vsftpd /var/log/xferlog

cannot change directory:/home/***

ftp服务器连接失败,错误提示:

500 OOPS: cannot change directory:/home/*******

500 OOPS: child died

500 OOPS: vsftpd: cannot locate user specified in ’ftp_username’:ftp
QUIT
错误: 连接被同位体重置
连接尝试失败.
错误: 连接中断

解决方法:

在终端输入命令:

setsebool ftpd_disable_trans 1

service vsftpd restart
或者
把selinux关掉

就OK了!
在安装完vsftp服务后登陆时可能遇到cannot change directory后面是登陆者的目录的错误。这是因为SE设置的关闭了ftp的原因。 使用命令 getsebool ftpd_disable_trans 可以查看当前的状态如果不是on 那么是输入命令 setsebool ftpd_disable_trans 1 当然也可以加入-P参数 以便不需要每次开机都输入这个命令 setsebool -P ftpd_disable_trans 1 同理 如果smb服务也遇到相同的问题

在安装完vsftp服务后登陆时可能遇到cannot change directory后面是登陆者的目录的错误。这是因为SE设置的关闭了ftp的原因。

使用命令

getsebool ftpd_disable_trans

可以查看当前的状态如果不是on

那么是输入命令

setsebool ftpd_disable_trans 1

当然也可以加入-P参数 以便不需要每次开机都输入这个命令

setsebool -P ftpd_disable_trans 1

同理 如果smb服务也遇到相同的问题 ,也可以这么做。

setsebool -P samba_enable_home_dirs=1

selinux的问题也可以使用 管理工具中的 selinux management 来调整相关设置。
FTP登录时错误信息:

500 OOPS: cannot change directory:/home/xxxxLogin failed.

421 Service not available, remote server has closed connection

开始以为是权限问题,将home/xxxx chmod为777,vsftpd配置文件全开依然不行。

百度一下查处原因:

==================================

I found information at the NSA that indicates you can disable SELinux protection of the ftp daemon.

setsebool -P ftpd_disable_trans 1

This seems a bit drastic. It certainly works for now though.

==================================

原来是新装系统RHEL5 增强的系统安全SELinux在作怪,关掉SELinux对FTP Daemon的保护就OK了:

关键字: 500 OOPS: could not bind listening IPv4 socket 错误
因为xinetd已经启动了vsftpd,而vsftpd设置成了stardalone模式,所以,先

停止xinetd服务, service xinetd stop ,然后 /usr/local/sbin/vsftpd &

启动ftp服务
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐