我是这个论坛的新手,所以如果这在错误的部分,请原谅...我习惯使用 StackOverflow。
无论如何,我遇到了一个问题:我想将 ownCloud 指向我服务器上包含网站文件的目录,但似乎无法实现。这样,我就可以登录 ownCloud 并编辑我的网站文件。我意识到这不是最安全的做法,但我打算在弄清楚如何做之后增加更多的安全性。
我已经阅读了无数关于如何安装 ownCloud 的教程,所以这不是我的问题。
提前致谢
答案1
您可以使用以下命令在服务器上挂载目录外部存储支持通过 SFTP 实现内置应用程序。在 ownCloud 中:
- 登录您的管理员账户
- 进入应用程序
- 激活外部存储支持
- 进入管理界面
- 向下滚动并启用 SFTP 选项
现在,用户设置会稍微复杂一些,因为您可能想同时使用本地编辑器和 ownCloud 文本编辑器应用程序来编辑文件。此外,这还能稍微提高安全性(强调:“稍微”)。
我假设您已正确设置 Apache/nginx,并已定义虚拟主机。目前目录位于/var/www/网站。
创建系统用户以访问网站目录
sudo adduser <username> #we'll call that user 'editor' for now
设置适当的目录权限
sudo chown -R www-data:editor /var/www/website
授予组编辑者对该目录及其子目录的写入权限
sudo find /var/www/website -type f -exec chmod 664 {} +; #for files
sudo find /var/www/website -type d -exec chmod 775 {} +; #for directories
如果想知道当前目录的权限:
stat -c %a /var/www/website
旁注:注意写入权限!775 和 664 不安全,您肯定需要知道您在这里做什么。最好的选择是不要在整个目录中设置权限,而是为每个子目录设置权限。如果这样做,您应该考虑更改 SSH 配置以仅允许通过公钥进行 SSH 访问,而无需密码访问。还可以查看denyhosts、fail2ban、IPtables 以及所有有助于强化服务器的优秀工具。
返回到您的 ownCloud 管理 UI 并通过 SFTP 配置外部存储:
- 目录名称: 你的选择
- 类型:显然是 SFTP
- 主持人:本地主机
- 用户:編輯
- 密码:剑鱼(当然)
- 根:/var/www/网站
- 在右侧:仅向特定用户提供该外部存储。
请记住,SFTP 访问非常慢,但至少它可以完成工作。