我已经设置了 SFTP/SSH,以便用户只能put
访问他们的主目录,但是他们仍然可以访问他们看到的cd
所有其他目录和文件。get
我该如何预防?
编辑:
我的sshd_配置: http://pastebin.com/jk7TCRZr
我已设法锁定到 /var/www,但他们仍然可以查看其他用户的文件夹。
编辑2:
呃.....我刚刚意识到我做错了什么......哈哈
另外,我怎样才能使 public_html 文件夹成为 Apache 尝试从中加载数据的文件夹?
答案1
您应该配置 sftp chroot。
答案2
或者你可以用类似的工具来做http://olivier.sessink.nl/jailkit/
答案3
固定的。
我做了以下事情(我可能不应该这样做,但它对我有用。这就是我想要的):
Match user myUser
ChrootDirectory /var/www/myUser
ForceCommand internal-sftp
AllowTcpForwarding no
GatewayPorts no
X11Forwarding no
在 /var/www/myUser 中,我创建了目录 public_html。之后,我启用了 userdir apache mod,如下所示:
sudo a2enmod userdir
sudo service apache2 restart
一切都...正常!
(当然,这有一个明显的缺点,我们现在必须在用户名前面加上波浪符号)