10.2 Установка NextCloud

Nextcloud — набор клиент-серверных программ для создания и использования облачного хранилища. Nextcloud можно установить как на хосте, так и на собственном сервере. По доступной функциональности похож на Dropbox.

В отличие от проприетарных сервисов, таких как Dropbox, открытая архитектура Nextcloud позволяет добавлять функциональность на сервер в виде приложений и дает возможность пользователям полностью контролировать свои данные.

Nextcloud позволяет совместно работать с офисными документами, файлами и информацией для планирования задач и мероприятий. Платформа также включает надстройки для доступа к электронной почте, обмена сообщениями, организации видеоконференций и чатов.

Аутентификация пользователей может производиться как по локальной базе, так и через интеграцию с LDAP/Active Directory, Kerberos, IMAP, в том числе с применением двухфакторной аутентификации, SSO (Single-sign-on) и привязки новых систем к учётной записи по QR-коду. Версионный контроль изменений позволяет отслеживать изменения в файлах, комментариях, правилах совместного доступа и тегах.

Также облачное хранилище поддерживает синхронизацию и обмен данными, предоставляет возможность просмотра и редактирования данных с любого устройства в любой точке сети. Доступ к данным может быть организован как при помощи web-интерфейса, так и с использованием протокола WebDAV и его расширений CardDAV и CalDAV.

Сервер Nextcloud можно развернуть на любом хостинге, поддерживающем выполнение PHP-скриптов и предоставляющем доступ к SQLite, MariaDB/MySQL или PostgreSQL.

Основные компоненты платформы Nextcloud:

  1. Files — организация хранения, синхронизации, совместного доступа и обмена файлами. Доступ может быть осуществлён как через Web, так и при помощи клиентского ПО для настольных и мобильных систем. Предоставляются такие расширенные возможности, как полнотекстовый поиск, прикрепление файлов при отправке комментариев, выборочный контроль доступа, создание защищённых паролем ссылок для загрузки, интеграция с внешними хранилищами (FTP, CIFS/SMB, SharePoint, NFS, Google Drive, Dropbox и т.п.).
  2. Flow — оптимизирует бизнеc-процессы через автоматизацию выполнения типовых работ, таких как преобразование документов в PDF, отправка сообщений в чаты при загрузке новых файлов в определённые каталоги, автоматическое назначение тегов. Возможно создание собственных обработчиков, выполняющих действия в привязке к определённым событиям.
  3. Встроенные средства совместного редактирования документов, электронных таблиц и презентаций на базе пакета ONLYOFFICE. Обеспечена полная интеграция ONLYOFFICE с остальными компонентами платформы, например, несколько участников могут одновременно редактировать один документ, параллельно обсуждая изменения в видеочате и оставляя заметки.
  4. Photos — галерея изображений, упрощающая поиск, обмен и навигацию по совместной коллекции фотографий и изображений. Поддерживается ранжирование фотографий по времени, месту, тегам и частоте просмотра.
  5. Calendar — календарь-планировщик, позволяющий координировать проведение встреч, планировать чаты и видеоконференции. Поддерживается загрузка событий с внешних ресурсов, поддерживающих протокол WebCal.
  6. Mail — совместная адресная книга и web-интерфейс для работы с электронной почтой. Возможна привязка нескольких учётных записей к одному inbox. Поддерживается шифрование писем и прикрепление цифровых подписей на базе OpenPGP. Возможна синхронизация адресной книги при помощи CalDAV.
  7. Talk — система обмена сообщениями и проведения web-конференций (чат, аудио и видео). Имеется возможность предоставления доступа к содержимому экрана и поддержка SIP-шлюзов для интеграции с обычной телефонией.

Установка NextCloud

Переведите на машине selinux в режим disabled.

На время настройки сервиса переведите selinux в режим disabled. Для этого измените содержимое конфигурационного файла:

nano /etc/selinux/config

Заменив текст SELINUX=enforcing на SELINUX=disabled

Более подробно см.ссылку
Не забудьте включить selinux после завершения настройки.

Необходимо подготовить систему для установки NextCloud, для этого установить следующие пакеты.
Если вы используете РЕД ОС версии 7.1 или 7.2, выполните команду:

# yum install httpd php php-dom php-mbstring php-gd php-pdo php-json php-xml php-zip php-curl php-mcrypt php-pear setroubleshoot-server bzip2 php-ldap php-mysqlnd mariadb mariadb-server mod_auth_kerb -y

Если вы используете РЕД ОС версии 7.3 и старше, выполните команду:

# dnf install httpd php php-dom php-mbstring php-gd php-pdo php-json php-xml php-zip php-curl php-mcrypt php-pear setroubleshoot-server bzip2 php-ldap php-mysqlnd mariadb mariadb-server mod_auth_kerb -y

В качестве базы данных используется MySQl.

Запуск и добавление в автозапуск mariadb

# systemctl start mariadb && systemctl enable mariadb

Выполните скрипт mysql_secure_installation чтобы защитить базу данных от злоумышленников

# mysql_secure_installation

На первом шаге вам нужно задать пароль root, по умолчанию пароль не задан, по этому нажмите Enter.

Далее введите пароль root и удалите анонимных пользователей

Запретите удаленный вход для root, если необходимо:

Удалите тестовую базу данных и обновите таблицу привилегий:

Осталось создать базу данных и пользователя, которые вы сможете использовать. Для подключения к базе используйте команду mysql:

# mysql -u root -p
CREATE DATABASE nextcloud;
CREATE USER 'nc_user'@'localhost' IDENTIFIED BY 'qwerqwer';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nc_user'@'localhost';
FLUSH PRIVILEGES;
quit

Установите NextCloud.
Если вы используете РЕД ОС версии 7.1 или 7.2, выполните команду:

# yum install nextcloud.noarch  nextcloud-httpd.noarch nextcloud-mysql.noarch

Если вы используете РЕД ОС версии 7.3 и старше, выполните команду:

# dnf install nextcloud.noarch  nextcloud-httpd.noarch nextcloud-mysql.noarch

Назначьте владельцем каталога nextcloud пользователя apache

# chown -R apache. /usr/share/nextcloud

Добавьте в автозапуск httpd и запустите:

# systemctl enable httpd --now

Отредактируйте файл /usr/share/nextcloud/config/config.php

Создайте секцию trusted_domains в массиве и впишите IP-адрес этого сервера по образцу:

$CONFIG = array (
....
'trusted_domains' =>
  array (
    0 => '192.168.0.29',
),
...
)

Далее, с помощью браузера, зайдите в веб интерфейс по адресу

http://<ip адрес сервера>/nextcloud

В открывшемся интерфейсе введите имя и пароль аккаунта будущего администратора сервера, а так же выберите в качестве базы данных сервер MySQL/MariaDB
Введите ранее созданного пользователя MySQL и название базы данных.
Пользователь: nc_user
Пароль: qqqwww
Название базы: nextcloud
Хост: localhost

Если вы нашли ошибку, выделите текст и нажмите Ctrl+Enter.

Print Friendly, PDF & Email