如何在Debian 9上安装和配置ownCloud

ownCloud是一个开源文件共享服务器和协作平台,可以将您的个人内容(如文档和图片)存储在一个集中的位置。这使您可以通过不依赖第三方内容托管来控制您的内容和安全性...

介绍

ownCloud是一个开源文件共享服务器和协作平台,可以将您的个人内容(如文档和图片)存储在一个集中的位置。 这使您可以通过不依赖Dropbox等第三方内容托管服务来控制您的内容和安全性。

在本教程中,我们将在Debian 9服务器上安装和配置ownCloud实例。

先决条件

要完成本指南中的步骤,您需要具备以下条件:

  • 服务器上的sudo用户和防火墙 :您可以按照Debian 9初始服务器设置指南创建具有sudo权限的用户并设置基本防火墙。
  • LAMP :ownCloud需要Web服务器,数据库和PHP才能正常运行。 设置LAMP(Linux,Apache,MySQL和PHP)服务器可满足所有这些要求。 请按照本指南安装和配置此软件。
  • SSL证书 :如何设置此证书取决于您是否具有可解析为服务器的域名。
    • 如果您有域名......保护您网站的最简单方法是使用Let's Encrypt,它提供免费的可信证书。 按照ApacheLet's Encrypt指南进行设置。
    • 如果您没有域...并且您只是使用此配置进行测试或个人使用,则可以使用自签名证书。 这提供了相同类型的加密,但没有域验证。 按照Apache自签名SSL指南进行设置。

第1步 - 安装ownCloud

Debian的默认存储库中不存在ownCloud服务器包。 但是,ownCloud为我们可以添加到服务器的分发维护一个专用存储库。

首先,让我们安装一些组件来帮助我们添加ownCloud存储库。 apt-transport-https软件包允许我们在apt来源列表中使用deb https://来指示通过HTTPS提供的外部存储库:

sudo apt update
sudo apt install curl apt-transport-https

接下来,使用curl命令下载ownCloud发布密钥,并使用add apt-key实用程序使用add命令将其导入:

curl https://download.owncloud.org/download/repositories/production/Debian_9.0/Release.key | sudo apt-key add -

'Release.key'文件包含一个PGP(Pretty Good Privacy)公钥, apt将用于验证ownCloud包是否可信。

除了导入密钥外, owncloud.listowncloud.listsources.list.d目录中创建一个名为owncloud.list的文件。 该文件将包含ownCloud存储库的地址。

echo 'deb http://download.owncloud.org/download/repositories/production/Debian_9.0/ /' | sudo tee /etc/apt/sources.list.d/owncloud.list

现在,我们可以使用包管理器来查找和安装ownCloud。 与主程序包一起,我们还将安装一些其他PHP库,这些库由ownCloud用于添加额外的功能。 通过键入以下命令更新本地包索引并安装所有内容

sudo apt update
sudo apt install php-bz2 php-curl php-gd php-imagick php-intl php-mbstring php-xml php-zip owncloud-files

我们需要的所有东西现在都安装在服务器上,接下来我们可以完成配置,然后我们就可以开始使用该服务了。

第2步 - 调整文档根目录

我们安装的ownCloud软件包将Web文件复制到服务器上的/var/www/owncloud 目前,Apache虚拟主机配置设置为从不同目录提供文件。 我们需要在配置中更改DocumentRoot设置以指向新目录。

您可以使用带有DUMP_VHOSTS选项的apache2ctl实用程序查找哪些虚拟主机文件引用您的域名或IP地址。 通过服务器的域名或IP地址过滤输出,以在以下几个命令中查找需要编辑的文件:

sudo apache2ctl -t -D DUMP_VHOSTS | grep server_domain_or_IP

输出可能看起来像这样:

*:443                  server_domain_or_IP (/etc/apache2/sites-enabled/server_domain_or_IP-le-ssl.conf:2)
         port 80 namevhost server_domain_or_IP (/etc/apache2/sites-enabled/server_domain_or_IP.conf:1)

在括号中,您可以看到每个引用我们将用于访问ownCloud的域名或IP地址的文件。 这些是您需要编辑的文件。

对于每个匹配,请在具有sudo权限的文本编辑器中打开该文件:

sudo nano /etc/apache2/sites-enabled/server_domain_or_IP.conf

在里面,搜索DocumentRoot指令。 更改该行,使其指向/var/www/owncloud目录:

示例DocumentRoot编辑
<VirtualHost *:80>
    . . .
    DocumentRoot /var/www/owncloud
    . . .
</VirtualHost>

完成后保存并关闭文件。 对引用您的域名的每个文件(如果您没有为服务器配置域,则为IP地址)完成此过程。

完成后,请检查Apache文件的语法,以确保配置中没有可检测的拼写错误:

sudo apache2ctl configtest
Syntax OK

根据您的配置,您可能会看到有关全局设置ServerName的警告。 只要输出以Syntax OK结束,您就可以忽略该警告。 如果您看到其他错误,请返回并检查刚编辑的文件是否存在错误。

如果您的语法检查已通过,请重新加载Apache服务以激活新的更改:

sudo systemctl reload apache2

Apache现在应该知道如何为自己的Cloud文件提供服务。

第3步 - 配置MySQL数据库

在我们继续进行Web配置之前,我们需要设置数据库。 在基于Web的配置过程中,我们需要提供数据库名称,数据库用户名和数据库密码,以便ownCloud可以在MySQL中连接和管理其信息。

首先使用MySQL管理帐户登录数据库:

sudo mysql

如果为MySQL管理帐户设置密码身份验证,则可能必须使用以下语法:

mysql -u admin -p

为ownCloud创建一个专用数据库以供使用。 为清晰起见,我们将数据库owncloudowncloud

CREATE DATABASE owncloud;

注意:每个MySQL语句必须以分号(;)结尾。 如果您遇到问题,请务必检查是否存在此问题。

接下来,创建一个单独的MySQL用户帐户来管理新创建的数据库。 从管理和安全角度来看,创建单功能数据库和帐户是一个好主意。 与数据库的命名一样,选择您喜欢的用户名。 我们选择在本指南中使用名称owncloud

GRANT ALL ON owncloud.* to 'owncloud'@'localhost' IDENTIFIED BY 'owncloud_database_password';

警告:请务必在命令中owncloud_database_password实际密码: owncloud_database_password

在用户分配了对数据库的访问权限后,执行flush特权操作以确保MySQL的运行实例知道最近的特权分配:

FLUSH PRIVILEGES;

您现在可以通过键入以下内容退出MySQL会话:

exit

安装ownCloud服务器并设置数据库后,我们准备将注意力转向配置ownCloud应用程序。

第4步 - 配置ownCloud

要访问ownCloud Web界面,请打开Web浏览器并导航到以下地址:

https://server_domain_or_IP

注意:如果您使用的是自签名SSL证书,则可能会向您显示警告,因为证书未由您的某个浏览器的受信任机构签名。 这是预期和正常的。 单击相应的按钮或链接以转到ownCloud管理页面。

您应该在浏览器中看到ownCloud Web配置页面。

通过选择用户名和密码来创建管理员帐户。 出于安全考虑,建议不要对用户名使用“admin”之类的内容:

ownCloud管理员帐户

接下来,按原样保留Data文件夹设置,然后向下滚动到数据库配置部分。

填写您在上一节中创建的数据库名称,数据库用户名和数据库密码的详细信息。 如果您使用了本指南中的设置,则数据库名称和用户名都将为owncloud 将数据库主机保留为localhost

ownCloud数据库配置

单击完成设置按钮,使用您提供的信息完成ownCloud的配置。 您将进入登录屏幕,您可以使用新帐户登录:

ownCloud登录界面

首次登录时,将出现一个屏幕,您可以在其中下载应用程序以在各种设备上同步文件。 您可以立即下载和配置这些内容,也可以在以后进行下载和配置。 完成后,单击初始屏幕右上角的x以访问主界面:

ownCloud主界面

在这里,您可以创建或上传文件到您的个人云。

结论

ownCloud可以复制流行的第三方云存储服务的功能。 内容可以在用户之间共享,也可以在外部与公共URL共享 ownCloud的优点是信息存储在您无需第三方控制和管理的地方。

浏览界面和其他功能,使用ownCloud的应用商店安装插件。