我已经在 Ubuntu 9.10 Karmic 服务器上设置了 sFTP 访问,但我遇到了我认为是权限问题。
使用我创建的 sFTP 帐户,它会自动登录到:
/srv/www/域名.com/
然而,我实际上只能上传到:
/srv/www/domain.com/public_html
这不可行,因为我需要创建与 public_html 并行的目录等。我知道我可能做错了,因为它是从几个帮助文件拼凑起来的。
我跟着这些说明为了创建 sFTP 访问组,我创建了一个用户,然后使用以下命令修改了他们的主目录:
usermod -d /srv/www/domain.com newuser
如果您需要任何其他信息来解决这个问题,请告诉我。
命令输出
> ls -al /srv/www/domain.com/ | grep public_html
drwxr-xr-x 2 newuser newuser 4096 2010-08-24 12:38 public_html
> ls -al /srv/www/ | grep domain.com
drwxr-xr-x 5 root root 4096 2010-08-24 12:21 domain.com
> groups newuser
newuser : newuser filetransfer
> ls -ld /srv/www/domain.com/
drwxr-xr-x 5 root root 4096 2010-08-24 12:21 /srv/www/domain.com/
答案1
您正在使用ChrootDirectory
OpenSSH 的指令。
这仅在相应用户的主目录归其所有root:root
且不是世界或全局可写(即具有权限掩码0755
但没有0770
)。否则将在您(或 syslog 设施 AUTH 的目的地)sshd
发出警告。auth.log
答案2
主目录不太可能是这里的问题,如果您可以看到要写入的目录,就无法写入它。
以下命令的输出是什么:(
ls -al /srv/www/domain.com/ | grep public_html
如果有更好的方法,请说出来)
groups newuser