简介
ownCloud 是一个文件共享服务器,允许您将个人内容(如文档和图片)存储在一个类似 Dropbox 的集中位置。ownCloud 的不同之处在于它是免费且开源的,这使任何人都可以使用和检查它。它还将您敏感数据的控制和安全性归还给您,从而消除了使用第三方云托管服务的需求。
在本教程中,我们将在 Ubuntu 16.04 服务器上安装和配置 ownCloud 实例。
先决条件
为了完成本指南中的步骤,您需要以下内容:
- 服务器上的 sudo 用户:您可以按照 Ubuntu 16.04 初始服务器设置指南创建一个具有 sudo 权限的用户。
- LAMP 栈:ownCloud 需要一个 Web 服务器、一个数据库和 PHP 来正常运行。设置一个 LAMP 栈(Linux、Apache、MySQL 和 PHP)服务器可以满足所有这些要求。按照本指南安装和配置这些软件。
- 为了充分利用 ownCloud 提供的所有功能,请确保安装以下 PHP 模块:
php-bz2
、php-curl
、php-gd
、php-imagick
、php-intl
、php-mbstring
、php-xml
和php-zip
。
- SSL 证书:您如何设置这个取决于您是否有一个解析到您服务器的域名。
- 如果您有一个域名…… 最简单的方式是使用 Let’s Encrypt 来保护您的站点,它提供免费的受信任的证书。按照 Apache 的 Let’s Encrypt 指南来设置。
- 如果您没有一个域名…… 并且您只是用这个配置进行测试或个人使用,您可以使用自签名证书。这提供了相同类型的加密,但没有域验证。按照 Apache 的自签名 SSL 指南来设置。
步骤 1 – 安装 ownCloud
ownCloud 服务器包在 Ubuntu 的默认仓库中不存在。但是,ownCloud 维护了一个专门的仓库供该发行版使用。
首先,使用 curl
命令下载他们的发布密钥,并使用 apt-key
实用程序的 add
命令导入它:
sudo curl https://download.owncloud.org/download/repositories/stable/Ubuntu_16.04/Release.key | sudo apt-key add -
. . . % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 1358 100 1358 0 0 2057 0 --:--:-- --:--:-- --:--:-- 2057 OK
‘Release.key’ 文件包含一个 PGP(Pretty Good Privacy)公钥,apt
将使用它来验证 ownCloud 包的真实性。
除了导入密钥,还要在 apt
的 sources.list.d
目录中创建一个名为 owncloud.list
的文件。该文件将包含指向 ownCloud 仓库的地址。
echo 'deb https://download.owncloud.org/download/repositories/stable/Ubuntu_16.04/ /' | sudo tee /etc/apt/sources.list.d/owncloud.list
deb https://download.owncloud.org/download/repositories/stable/Ubuntu_16.04/ /
添加新源后,使用 apt-get
实用程序和 update
命令使 apt
意识到更改:
sudo apt-get update
. . . W: https://download.owncloud.org/download/repositories/stable/Ubuntu_16.04/Release.gpg: Signature by key DDA2C105C4B73A6649AD2BBD47AE7F72479BC94B uses weak digest algorithm (SHA1)
最后,使用 apt-get
实用程序和 install
命令执行 ownCloud 的安装:
sudo apt-get install owncloud
在收到 Do you want to continue? [Y/n]
消息时,按下 ENTER
键确认安装。
Setting up owncloud-deps-php7.0 (9.1.1-1.2) ... Enabling conf owncloud. To activate the new configuration, you need to run: service apache2 reload apache2_invoke: Enable module rewrite apache2_invoke owncloud: already enabled Setting up owncloud (9.1.1-1.2) ... Processing triggers for libc-bin (2.23-0ubuntu4) ... Processing triggers for libapache2-mod-php7.0 (7.0.8-0ubuntu0.16.04.3) ...
从输出中可以看出,安装创建了 Apache 的新配置。使用 systemctl
实用程序和 reload
命令使 Apache 守护程序意识到更改:
sudo systemctl reload apache2
安装了 ownCloud 服务器后,我们将继续设置一个数据库供其使用。
第二步 – MySQL 数据库配置
首先,使用管理员账户登录 MySQL:
mysql -u root -p
输入你在安装数据库服务器时为 MySQL root 用户设置的密码。
ownCloud 需要一个单独的数据库来存储管理数据。虽然你可以随意命名这个数据库,但为了简化操作,我们决定将其命名为 owncloud
。
CREATE DATABASE owncloud;
接下来,创建一个单独的 MySQL 用户账户,用于与新创建的数据库进行交互。从管理和安全的角度考虑,创建单一功能的数据库和账户是个不错的主意。和数据库的命名一样,选择一个你喜欢的用户名。在本指南中,我们选择使用名为 owncloud
。
GRANT ALL ON owncloud.* to 'owncloud'@'localhost' IDENTIFIED BY 'set_database_password';
用户被赋予对数据库的访问权限后,执行 flush-privileges 操作以确保运行中的 MySQL 实例知道最近的权限分配情况:
FLUSH PRIVILEGES;
MySQL 配置完成,因此我们将通过输入以下命令退出会话:
exit
ownCloud 服务器已安装并且数据库已设置好,现在我们可以开始配置 ownCloud 应用程序。
第三步 – ownCloud 配置
要访问 ownCloud 网页界面,请打开浏览器并输入以下地址:
https://server_domain_or_IP/owncloud
如果使用自签名证书,可能会收到警告,因为证书未由浏览器信任的机构签名。这是预期的和正常的。我们只关心证书的加密方面,而不是主机真实性的第三方验证。点击适当的按钮或链接以继续访问 ownCloud 管理页面。
你应该会看到类似以下的界面:
!ownCloud 管理页面
通过选择用户名和密码创建一个管理员账户。出于安全考虑,不建议使用类似 “admin” 的用户名。
!ownCloud 管理账户
在点击 完成设置 按钮之前,点击 存储 & 数据库 链接:
!ownCloud 数据库配置
保持 数据文件夹 设置不变,并在 配置数据库 部分点击 MySQL/MariaDB 按钮。
!ownCloud 数据库设置
输入在上一步中配置的数据库信息。以下是一个示例,与本指南中使用的数据库凭据匹配:
!ownCloud 数据库示例
点击 完成设置 按钮以登录 ownCloud。应该会出现 A safe home for all your data 欢迎界面:
!ownCloud 欢迎界面
点击欢迎界面右上角的 x 以访问主界面:
!ownCloud 主界面
在这里,你可以创建或上传文件到你的个人云存储空间。
结论
ownCloud 可以复制流行的第三方云存储服务的功能。内容可以在用户之间共享,也可以通过公共 URL 在外部共享。ownCloud 的优势在于信息存储在你控制的安全位置。
探索界面,并通过 ownCloud 的应用商店安装插件以获得额外功能。