linux ftp 550failed,Redhat 5 Vsftp 550 failed to change directory 问题解决

结果测试的时候发现

ftp localhost

ftp> cd cdrom

550 Failed to change directory.

无法切换目录到/pub/cdrom

原因是SElinux的FTP传输审核功能禁止切换目录

解决办法:

1. /etc/sysconfig/selinux上禁用之,重启Linux生效

2. 不重启linux,临时停用selinux的办法,

/usr/sbin/setenforce 0

3. 禁用SElinux的FTP传输审核功能

/usr/sbin/setsebool -P ftpd_disable_trans 1

service vsftpd restart

其中参数 -P表示永久性生效

使用getsebool -a | grep ftp命令找到ftp的bool值

匿名上传setsebool -P allow_ftpd_anon_write on

禁用ftp传输审核setsebool -P ftpd_disable_trans on

sestatus

[root@xen ~]# sestatus

SELinux status: enabled

SELinuxfs mount: /selinux

Current mode: permissive

Mode from config file: enforcing

Policy version: 21

Policy from config file: targeted

[root@xen ~]# getsebool -a | grep ftp

allow_ftpd_anon_write --> off

allow_ftpd_full_access --> off

allow_ftpd_use_cifs --> off

allow_ftpd_use_nfs --> off

allow_tftp_anon_write --> off

ftp_home_dir --> off

ftpd_disable_trans --> off

ftpd_is_daemon --> on

httpd_enable_ftp_server --> off

tftpd_disable_trans --> off

[root@xen ~]# setsebool -P ftpd_disable_trans on

[root@xen ~]# service vsftpd restart

------------------------------------------------

如果问题依旧,再尝试如下的方法:

打开 /etc/vsftpd/vsftp.conf,将

# users to NOT chroot().

chroot_list_enable=YES

改成

# users to NOT chroot().

chroot_list_enable=NO

并把ftp用户添加到/etc/vsftpd/chroot_list中

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值