Всех приветствую на моем сайте! В данной статье я опишу настройку персонального облачного хранилища Nextcloud и прикреплю конфигурационные файлы с моего рабочего сервера. Что такое Nextcloud? Это Open source программа, с помощью которой можно организовать собственное облачное хранилище. Nextcloud — это единый интерфейс, с кучей сервисов и огромным функционалом.
Вводные данные:
- Установка разворачивается на виртуальной машине под управлением KVM (Kernel-based Virtual Machine) описана в одной из моих статей.
- Набор клиент-серверных программ Nextcloud 25.0.5
- Дистрибутив взятый за основу devuan Chimaera 4.0
1. Начнем установку с зависимых пакетов, а именно установим: php, apache2, mariadb
sudo apt install php7.4 php7.4-mysql libapache2-mod-php7.4 php7.4-cli php7.4-cgi php7.4-gd php7.4-curl php7.4-dom php7.4-imagick php7.4-mbstring php7.4-zip php7.4-intl
sudo apt install mariadb-server mariadb-client
sudo apt install apache2
Активация модулей Apache
sudo a2enmod rewrite
sudo service apache2 restart
Учтите что команда перезапуска служб в разных дистрибутивах linux может отличаться, приведу примеры как перезапустить службу в ubuntu & debian
- sudo systemctl restart apache2
- sudo /etc/init.d/apache2 restart
Находим необходимую версию пакета и скачиваем по ссылке ниже:
https://download.nextcloud.com/server/releases/?C=M;O=D
Скачиваем самую последнюю версию, сортировку лучше сделать по размеру «Size» Воспользуемся командой wget и вставляя свою ссылку с нужной версией Nextcloud.
wget -c https://download.nextcloud.com/server/releases/nextcloud-26.0.0.zip
Извлекаем загруженный ZIP-архив Nextcloud-25.0.5.zip в каталог, к которому имеет доступ Apache, и изменив права на каталог Nextcloud на пользователя веб-сервера.
unzip nextcloud-25.0.5.zip -d /var/www/nextcloud && chown -R www-data:www-data /var/www/nextcloud/
2. Настройка nextcloud
Создадим базу данных и пользователя Nextcloud
Старайтесь делать уникальные название баз данных и имена пользователей, а так же сложные пароли, во избежания взлома.
mysql -u root -p
CREATE DATABASE dbcloud_name59_3 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE USER 'usercloud59_3'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON dbcloud_name59_3.* TO ''usercloud59_3'@'localhost';
flush privileges;
quit;
Добавим алиас в конфиг Апача для Nextcloud
sudo mcedit /etc/apache2/conf-available/nextcloud.conf
Alias /cloud «/var/www/nextcloud/»
<Directory /var/www/nextcloud/>
Options +FollowSymlinks
AllowOverride All
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME /var/www/nextcloud
SetEnv HTTP_HOME /var/www/nextcloud
</Directory>
Активируем добавленный конфигурационный файл и перезагружаем Apache
sudo a2enconf nextcloud sudo service apache2 reload
Открываем браузер и вводим адрес www.ip_адрес_сервера/cloud
Заполняем все поля исходя из исходных данных:
- Имя суперпользователя, под которым будем администрировать все функции облака
- Придумываем сложный пароль
- Указываем каталог с данными ( адрес в который мы установили nextcloud /var/www/nextcloud/data )
- Имя базы данных, что мы создали выше dbcloud_name59_3 ( у вас своя )
- Пароль который указали при создании базы данных
- Имя пользователя базы данных usercloud59_3 ( у вас свой )
После ввода данных нажмите Установить, произойдет инициализация пакетов.
Разрешим внешний доступ к сайту на уровне его «движка». Отредактируем конфигурационный файл config.php
sudo mcedit /var/www/nextcloud/config/config.php
В секцию trusted_domains добавим адреса или доменное имя нашего сервера на которомустановлен Nexcloud. 'trusted_domains' =>
array (
0 => 'domain_name.ru',
1 => 'ip_adress',
),
Теперь можно проверить работоспособность сервиса, перейдя по адресу www.ip_адрес_сервера/cloud. У меня установилось без проблем, думаю у вас тоже не возникнет сложностей на этом этапе.
В случае если вам понадобиться сбросить пароль суперпользователя воспользуйтесь инструкцией ниже
********************СБРОС ПАРОЛЯ АДМИНА*************** cd /var/www/nextcloud sudo -u www-data /usr/bin/php occ user:resetpassword admin admin — пользователь которому надо сбросить пароль /usr/bin/php — путь к PHP интерпретатору /var/www/html/ nextcloud/ — путь к каталогу OCC файла www-data — пользователь от которого запускаем скрипт occ Enter a new password: Aborted. user:resetpassword [--password-from-env] [--] <user>