之前一直安装完vsftpd 之后一直只用一个帐号登录!今天晚上跟小狼同学谈论之中我自己也试了下,结果出现成功添加用户但无法登录的情况!如下:
[右] 正在连接到 linode-test -> IP=69.164.198.23 PORT=21
[右] 已连接到 linode-test
[右] 220 Welcome to "jiucool.com" FTP service.
[右] USER jiucool
[右] 331 Please specify the password.
[右] PASS (隐藏)
[右] 500 OOPS: cannot change directory:/home/jiucool/user0
[右] 连接失败
网上得到解决办法是:
在终端输入命令: setsebool ftpd_disable_trans 1 service vsftpd restart
其实这样并不能解决我所遇到的问题!
我添加用户方法如下:
#mkdir /home/jiucool/user0 #useradd -d /home/jiucool/user0 jiucool (添加用户jiucool至家目录/home/jiucool/user0,开放SSH权限) #passwd jiucool
然后登录 FTP是上不去的!为啥呢,我找了下原因,发现是这样的,由于执行上面命令时我是用的root帐户,所以创建的目录所有者是root 所有组也是root ,并且默认权限为700,这样你新添加的用户肯定是登录不上FTP的啦!
如何解决呢?
你只要将user0目录 所有者及所有组修改为你添加的用户即可!就这么简单!
在linux当中目录权限是相当严格的,在使用时大家一定要注意啦!一个小小失误足以让你的帐号无法登录!
setsebool ftpd_disable_trans 1
这是改变selinux的策略,一般很少有服务器开启selinux,除非是灰常灰常要求安全的地方,比如银行
selinux会影响30%的性能~
[Reply]
看起来很复杂
[Reply]
嗯,懂了,哈哈,我只是试了超级权限的root用户建的超级权限的dfwolf,还没设置其他账户呢~
[Reply]
不懂……
[Reply]
沙发?
[Reply]