如何在 Ubuntu 上制作个人云存储?

Mur*_*aza 8 cloud

我想用 Ubuntu 将我的旧电脑变成云存储服务器。请记住,我是 Ubuntu 的新手,所以请让教程简短而精彩。提前致谢!:D

Gep*_*nzo 5

自己的云

对你来说似乎是一个很好的解决方案。它对我适用于基于 Ubuntu 的操作系统,它提供了一个易于安装的过程,为了您的方便,我在此处复制了该过程,但请记住,Owncloud 在其支持站点上提供了足够的信息:https ://doc.owncloud.org/ server/7.0/admin_manual/installation/installation_wizard.html以及其他有用的资源。

它是一种类似于 Dropbox 帐户的自托管服务,但托管在您自己的服务器中,并根据您的家庭服务器的限制(硬盘驱动器空间、微处理器速度和内存量)进行限制。

安装过程看起来太难了,但它就像下载单个文件一样简单,将它放在您的公共 html 文件夹中,然后在 Web 浏览器的地址栏中写入正确的地址。接下来是纯指令的网页,之后您将安装它。

我在家庭和网络服务器中拥有一个已经安装的 Owncloud 服务。如果您愿意,我可以为您提供一个帐户,以便您检查 Owncloud 的属性。

祝你好运!

安装向导

当 ownCloud 先决条件得到满足并且所有 ownCloud 文件都安装在服务器上时,完成安装的最后一步是运行安装向导。打开您的 Web 浏览器到您的新 ownCloud 安装。

  • 如果您在访问安装向导的同一台机器上安装 ownCloud,则 URL 将是 http://localhost/owncloudhttps://localhost/owncloud(如果您启用了 SSL)。
  • 如果您在另一台机器上安装 ownCloud,则必须通过其主机名或 IP 地址访问它,例如 http://example.com/owncloud
  • 如果您使用的是自签名证书,您将看到有关证书颁发者不受信任的安全警告,您可以忽略该警告。

    您将看到设置屏幕:

../_images/install-wizard.png

所需设置

在创建管理员帐户下,您必须输入管理员用户帐户的用户名和密码。您可以选择任何您想要的用户名和密码。存储和数据库

  • 单击存储和数据库以查看所有数据库选项,并可选择更改默认数据存储目录。
  • 您要使用的数据库必须已经安装,并且您必须拥有数据库管理员用户和密码。
  • 为数据库名称输入任意名称。这必须是尚不存在的数据库。
  • 如果您不使用 Apache 作为 Web 服务器,强烈建议将数据目录配置到文档根目录之外的位置。否则所有用户数据都可能公开可见!

../_images/install-wizard-advanced.png

数据库选择

  • 有关选择哪个数据库系统的指南,以及如何设置它们以供 PHP/ownCloud 使用的指南,请参阅数据库配置
  • 请注意,您只能在实际安装在系统上的 PHP 数据库连接器中进行选择。
  • 一旦您设置了 ownCloud 以使用特定的数据库系统,就不容易迁移到另一个数据库系统。所以一定要仔细考虑使用哪个数据库系统。
  • 使用 MySQL/MariaDB 或 PostgreSQL 时,您有两个关于指定的数据库名称和用户帐户的选项:

    You can specify either an admin or the root user, and the name of a database which does not yet exist. This lets ownCloud create its own database; it will also create a database user account with restricted rights (with the same username as you specified for the administrative user, plus an oc_ prefix) and will use that for all subsequent database access.
    
    There are restrictions as to what characters a database name may or may not contain; see the MySQL Schema Object Names documentation for details);
    
    Run Code Online (Sandbox Code Playgroud)

完成安装

  • 输入所有设置后,单击“完成设置”
  • ownCloud 将根据给定的设置设置您的云
  • 完成后,它将以管理员用户身份登录并显示“欢迎使用 ownCloud”屏幕。

设置强目录权限

为了加强安全,我们建议尽可能严格地设置您 ownCloud 目录的权限。这应该在初始安装后立即完成。您的 HTTP 用户必须拥有 ownCloud 目录中的 config/、data/ 和 apps/ 目录,以便您可以配置 ownCloud,创建、修改和删除您的数据文件,以及通过 ownCloud Web 界面安装应用程序。

您可以在 HTTP 服务器配置文件中找到您的 HTTP 用户。或者您可以创建一个 PHP 页面来为您找到它。为此,请创建一个包含一行的纯文本文件:

将其命名为 whoami.php 并将其放在您的 /var/www/html 目录中,然后在 Web 浏览器中打开它,例如http://localhost/whoami.php。您应该会在浏览器页面中看到一行包含 HTTP 用户名的行。

  • Debian/Ubuntu 中的 HTTP 用户和组是 www-data。
  • Fedora/CentOS 中的 HTTP 用户和组是 apache。
  • Arch Linux 中的 HTTP 用户和组是 http。
  • openSUSE 中的 HTTP 用户是 wwwrun,HTTP 组是 www。

笔记

对数据目录使用 NFS 挂载时,请勿更改其默认所有权。挂载驱动器的简单操作将为 ownCloud 设置适当的权限以写入目录。如果 NFS 挂载丢失,如上所述更改所有权可能会导致一些问题。

设置正确权限的简单方法是复制并运行此脚本。将 ocpath 变量替换为您 ownCloud 目录的路径,并将 htuser 变量替换为您自己的 HTTP 用户:

#!/bin/bash
ocpath='/var/www/owncloud'
htuser='www-data'

find ${ocpath}/ -type f -print0 | xargs -0 chmod 0640
find ${ocpath}/ -type d -print0 | xargs -0 chmod 0750

chown -R root:${htuser} ${ocpath}/
chown -R ${htuser}:${htuser} ${ocpath}/apps/
chown -R ${htuser}:${htuser} ${ocpath}/config/
chown -R ${htuser}:${htuser} ${ocpath}/data/

chown root:${htuser} ${ocpath}/.htaccess
chown root:${htuser} ${ocpath}/data/.htaccess

chmod 0644 ${ocpath}/.htaccess
chmod 0644 ${ocpath}/data/.htaccess
Run Code Online (Sandbox Code Playgroud)

如果您自定义了 ownCloud 安装并且您的文件路径与标准安装不同,则相应地修改此脚本。

这列出了您 ownCloud 目录和文件的推荐模式和所有权:

  • 所有文件对于文件所有者应该是可读写的,对于组所有者应该是只读的,对于世界应该是零
  • 所有目录都应该是可执行的(因为目录总是需要设置可执行位),目录所有者可以读写,组所有者只读
  • / 目录应由 root 拥有:[HTTP 用户]
  • apps/ 目录应归 [HTTP 用户]:[HTTP 用户]所有
  • config/ 目录应归 [HTTP 用户]:[HTTP 用户] 所有
  • data/ 目录应归[HTTP 用户]:[HTTP 用户]所有
  • [ocpath]/.htaccess 文件应该归 root:[HTTP 用户]所有
  • data/.htaccess 文件应该由 root 拥有:[HTTP 用户]
  • .htaccess 文件都是读写文件所有者、只读组和世界

可信域

ownCloud 将获取用于访问安装向导的 URL,并将其插入到 trust_domains 设置的 config.php 文件中。ownCloud 服务器的所有需要​​的域名进入trusted_domains 设置。用户只有在将浏览器指向trusted_domains 设置中列出的域名时才能登录ownCloud。可以指定 IPv4 地址而不是域名。典型的配置如下所示:

'trusted_domains' =>
  array (
   0 => 'localhost',
   1 => 'server1',
   2 => '192.168.1.50',
),
Run Code Online (Sandbox Code Playgroud)

如果负载均衡器就位,只要它发送正确的 X-Forwarded-Host 标头就不会出现问题。

环回地址127.0.0.1被列入白名单,因此ownCloud服务器上使用环回接口访问ownCloud的用户将能够成功登录。如果使用了不正确的 URL,则会出现以下错误: ../_images/untrusted-domain.png

配置示例请参考 config/config.sample.php 文档。