vsftp软链接ln遇到550错误

2013年7月19日 发表评论 阅读评论

centos 6.3上新建了vsftp ,用于文件下载使用 。/var/ftp/pub可以匿名登陆下载 。如果想要上传则需要使用密码验证 。

登陆使用的账号是ftpclient ,路径在/home/ftpclient 。在/var/ftp/pub下新建一个软链接:

cd /var/ftp/pub
ln -s /home/ftpclient client

但用ftp客户端匿名连上去后,进入client目录报550错误,无权限访问。

ftp> cd pub
250 Directory successfully changed.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
lrwxrwxrwx    1 0        0              15 Sep 08 03:30 client -> /home/ftpclient
226 Directory send OK.
ftp> cd client
550 Failed to change directory.

无论怎么修改/home/ftpclient的权限都是一样。后面在网上找到,可以用mount –bind的方式规避权限问题。操作步骤如下:

cd /var/ftp/pub
mkdir client
mount --bind /home/ftpclient client

此时550问题完美解决 。

注:在开启有selinux 防火墙时,vsftp也会报500错误 。如果是selinux的问题时,可以通过getsebool ftpd_disable_trans命令查看,输出状态是否为on 。如果不是on ,可以通过如下命令解决:

setsebool ftpd_disable_trans 1

同理,smb在selinux下也会有类似问题,同样可以按该方法解决:

setsebool -P samba_enable_home_dirs=1

不过使用该命令设置的配置在重启后会失效 。




本站的发展离不开您的资助,金额随意,欢迎来赏!

You can donate through PayPal.
My paypal id: itybku@139.com
Paypal page: https://www.paypal.me/361way

  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.