ownCloud — платформа обмена файлами и совместной работы с открытым исходным кодом, предназначенная для централизованного хранения персонального контента, в том числе документов и изображений. Платформа позволяет полностью контролировать контент и его безопасность, не полагаясь на такие сторонние службы хостинга, как Dropbox.
В этом обучающем руководстве мы научимся устанавливать и настраивать экземпляр ownCloud на сервере Ubuntu 18.04.
Чтобы выполнить перечисленные в настоящем руководстве шаги, вам потребуется следующее:
sudo
и настроить базовый брандмауэр в соответствии с указаниями руководства Начальная настройка сервера Ubuntu 18.04.Пакет сервера ownCloud отсутствует в репозиториях Ubuntu по умолчанию. Однако для распространения ownCloud имеется собственный репозиторий, который мы можем добавить на наш сервер.
Для начала загрузите ключ релиза с помощью команды curl
и импортируйте его с помощью утилиты apt-key
, используя команду add
:
- curl https://download.owncloud.org/download/repositories/10.0/Ubuntu_18.04/Release.key | sudo apt-key add -
Файл Release.key содержит открытый ключ PGP, который apt
использует для проверки подлинности пакета ownCloud.
Помимо импорта ключа вам нужно будет создать файл owncloud.list
в директории sources.list.d
для apt
. В этом файле будет содержаться адрес репозитория ownCloud.
- echo 'deb http://download.owncloud.org/download/repositories/10.0/Ubuntu_18.04/ /' | 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
Мы установим на сервер все, что нам потребуется, а затем сможем закончить настройку и начать использование службы.
Установленный нами пакет ownCloud копирует веб-файлы в директорию /var/www/owncloud
на сервере. Конфигурация виртуального хоста Apache настроена для выдачи файлов из другой директории. Нам нужно изменить параметр DocumentRoot
в нашей конфигурации, чтобы он указывал на новую директорию.
Чтобы определить, какие файлы виртуального хоста ссылаются на ваше доменное имя или IP-адрес, нужно использовать утилиту apache2ctl
с опцией DUMP_VHOSTS
. Отфильтруйте результаты по доменному имени или IP-адресу вашего сервера, чтобы определить, какие файлы нужно отредактировать с помощью следующих нескольких команд:
- sudo apache2ctl -t -D DUMP_VHOSTS | grep server_domain_or_IP
Результаты будут выглядеть примерно так:
Output*: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)
В скобках показаны все файлы, ссылающиеся на доменное имя или IP-адрес, которые мы будем использовать для доступа к ownCloud. Это те файлы, которые вам нужно отредактировать.
Откройте каждый из совпадающих файлов в текстовом редакторе с привилегиями sudo
:
- sudo nano /etc/apache2/sites-enabled/server_domain_or_IP.conf
Найдите в каждом из файлов директиву DocumentRoot
. Измените эту строку так, чтобы она указывала на директорию /var/www/owncloud
:
<VirtualHost *:80>
. . .
DocumentRoot /var/www/owncloud
. . .
</VirtualHost>
Сохраните файл и закройте его после завершения. Завершите эту процедуру для каждого из файлов, ссылающихся на ваше доменное имя (или на IP-адрес, если у вашего сервера нет доменного имени).
Закончив редактирование, проверьте синтаксис файлов Apache и убедитесь, что в конфигурации отсутствуют заметные опечатки:
- sudo apache2ctl configtest
OutputSyntax OK
В зависимости от вашей конфигурации вы можете увидеть предупреждение относительно настройки параметра ServerName
как глобального. Если в конце страницы результатов отображается надпись Syntax OK
, вы можете игнорировать это предупреждение. Если вы видите дополнительные ошибки, проверьте отредактированные файлы на наличие ошибок.
Если файлы прошли проверку синтаксиса, перезапустите службу Apache для активации изменений:
- sudo systemctl reload apache2
Теперь Apache должен выводить ваши файлы ownCloud с вашего сервера.
Прежде чем перейти к настройке веб-конфигурации, нам нужно настроить базу данных. В процессе настройки веб-конфигурации нам нужно указать имя базы данных, имя пользователя базы данных и пароль для базы данных. Все это необходимо ownCloud для подключения к базе данных MySQL и управления своими данными.
Для начала войдите в базу данных как администратор MySQL:
- sudo mysql
Если вы задали использование пароля для учетной записи MySQL root
, используйте следующий синтаксис:
- mysql -u root -p
Создайте выделенную базу данных для ownCloud. Для удобства мы присвоим базе данных имя owncloud
:
- CREATE DATABASE owncloud;
Примечание. Каждый оператор MySQL должен заканчиваться точкой с запятой (;). Обязательно проверьте это, если у вас возникнут проблемы.
Затем создайте отдельную учетную запись пользователя MySQL для управления созданной базой данных. Создание баз данных и учетных записей с одной функцией является хорошей идеей с точки зрения управления и безопасности. Выберите предпочитаемое имя пользователя. Для целей этого обучающего модуля мы решили использовать имя owncloud
.
- GRANT ALL ON owncloud.* to 'owncloud'@'localhost' IDENTIFIED BY 'owncloud_database_password';
Предупреждение. Обязательно введите реальный пароль там, где в команде стоит: owncloud_database_password
С назначенным пользователем доступом к базе данных выполните операцию очистки привилегий, чтобы работающему экземпляру MySQL было известно о недавнем назначении привилегий:
- FLUSH PRIVILEGES;
Теперь вы можете закрыть сеанс MySQL с помощью следующей команды:
- exit
Мы установили сервер ownCloud и настроили базу данных. Теперь можно переходить к настройке приложения ownCloud.
Чтобы открыть веб-интерфейс ownCloud, введите в браузере следующий адрес:
https://server_domain_or_IP
Примечание. Если вы используете самоподписанный сертификат SSL, вы можете увидеть предупреждение безопасности, поскольку этот сертификат не подписан доверенным центром сертификации, указанным в браузере. Такое предупреждение нормально, и его следует ожидать. Нажмите соответствующую кнопку или ссылку для перехода на страницу администрирования ownCloud.
В вашем браузере должна открыться страница веб-конфигурации ownCloud.
Создайте учетную запись администратора, выбрав имя пользователя и пароль. Для целей безопасности не рекомендуется использовать имя пользователя admin или другие похожие имена:
Оставьте параметр Data folder без изменений и прокрутите страницу до раздела конфигурации базы данных.
Укажите имя базы данных, имя пользователя базы данных и пароль для доступа к базе данных, которые вы создали на предыдущем шаге. Если вы использовали параметры из этого руководства, именем базы данных и именем пользователя будет owncloud
. Оставьте localhost
в качестве хоста базы данных:
Нажмите кнопку Finish setup (Завершить настройку), чтобы завершить настройку конфигурации ownCloud с использованием указанной вами информации. Вы перейдете на экран входа в систему, где вам нужно будет ввести новые учетные данные:
При первом входе в систему откроется экран, где вы сможете загрузить приложения для синхронизации файлов на различных устройствах. Вы можете загрузить и настроить их сейчас или позднее. Завершив этот шаг, нажмите x в правом верхнем углу экрана заставки, чтобы перейти к главному интерфейсу:
Здесь вы можете создавать файлы или выгружать их в свое персональное облако.
ownCloud позволяет воспроизводить возможности популярных сторонних облачных сервисов хранения файлов. Контентом можно делиться с другими пользователями или делать его общедоступным через публичные URL. Преимущество ownCloud заключается в том, что вы контролируете место хранения данных и управляете им без использования сторонних услуг.
Изучите интерфейс и установите плагины из магазина приложений ownCloud, если вам требуются дополнительные возможности.
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!