Как установить Nextcloud на Ubuntu 24.04/22.04/20.04

Введение

Nextcloud это самостоятельный хостинг с открытым исходным кодом. платформа для обмена файлами и совместной работы , предназначенная для безопасного хранения и передачи данных. Она представляет собой надежную альтернативу коммерческим облачным сервисам, обеспечивая полный контроль над вашими данными. Это руководство поможет вам установить Nextcloud на Ubuntu 24.04/22.04, обеспечив безопасность и оптимизацию вашей установки.

Предварительные условия

Перед началом работы убедитесь, что у вас есть следующее:

  • Экземпляр сервера Ubuntu 24.04, 22.04 или 20.04.
  • Некорневой пользователь с привилегиями sudo.
  • Полностью определенное доменное имя (FQDN), указывающее на IP-адрес вашего сервера.
  • Базовые знания об операциях в командной строке.

Шаг 1: Обновление системы

Сначала убедитесь, что ваша система обновлена. Выполните следующие команды:

$ sudo apt update
$ sudo apt upgrade -y

Шаг 2: Установите веб-сервер Apache

Nextcloud требуется веб-сервер для обслуживания веб-интерфейса. Мы будем использовать Apache для этой цели.

$ sudo apt install apache2 -y

Включите и запустите Apache:

$ sudo systemctl enable apache2
$ sudo systemctl start apache2

Проверьте статус, чтобы убедиться, что Apache запущен:

$ sudo systemctl status apache2

Шаг 3: Установите PHP и необходимые расширения

Nextcloud построен на PHP, поэтому нам нужно установить PHP вместе с несколькими расширениями, необходимыми для Nextcloud.

$ sudo apt install php libapache2-mod-php php-mysql php-gd php-json php-curl php-mbstring php-intl php-imagick php-xml php-zip -y

Проверьте версию PHP, чтобы убедиться, что он установлен правильно:

$ php -v

Шаг 4: Установите сервер баз данных MariaDB

Nextcloud требуется база данных для хранения своих данных. Мы будем использовать MariaDB, популярный форк MySQL.

$ sudo apt install mariadb-server -y

Защитите установку MariaDB:

$ sudo mysql_secure_installation

Следуйте подсказкам, чтобы установить пароль root и удалить ненужных пользователей и базы данных.

Шаг 5: Создание базы данных для Nextcloud

Войдите в оболочку MariaDB как пользователь root:

$ sudo mysql -u root -p

Создайте базу данных и пользователя для Nextcloud:

CREATE DATABASE nextcloud;
CREATE USER 'nextclouduser'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextclouduser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Шаг 6: Загрузка и настройка Nextcloud

Перейдите в каталог /var/www и загрузите последнюю версию Nextcloud:

$ cd /var/www
$ sudo wget https://download.nextcloud.com/server/releases/latest.zip

Распакуйте загруженный архив:

$ sudo apt install unzip -y
$ sudo unzip latest.zip

Установите правильные разрешения:

$ sudo chown -R www-data:www-data nextcloud
$ sudo chmod -R 755 nextcloud

Шаг 7: Настройте Apache для Nextcloud

Создайте новый файл конфигурации Apache для Nextcloud:

sudo nano /etc/apache2/sites-available/nextcloud.conf

Добавьте следующую конфигурацию:

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot /var/www/nextcloud
    ServerName your_domain
    <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>
    ErrorLog ${APACHE_LOG_DIR}/nextcloud_error.log
    CustomLog ${APACHE_LOG_DIR}/nextcloud_access.log combined
</VirtualHost>

Включите новую конфигурацию и необходимые модули Apache:

$ sudo a2ensite nextcloud.conf
$ sudo a2enmod rewrite headers env dir mime

Перезапустите Apache, чтобы применить изменения:

$ sudo systemctl restart apache2

Шаг 8: Установка и настройка SSL

Для безопасности очень важно использовать SSL/TLS для шифрования трафика между сервером и клиентами. Мы используем Certbot для получения бесплатного SSL-сертификата от Let’s Encrypt.

Установите Certbot и плагин для Apache:

$ sudo apt install certbot python3-certbot-apache -y

Получите и установите SSL-сертификат:

$ sudo certbot --apache -d your_domain

Следуйте подсказкам, чтобы завершить установку SSL. Certbot автоматически настроит Apache на использование нового сертификата.

Шаг 9: Завершите настройку Nextcloud в браузере

Откройте веб-браузер и перейдите к своему домену:

https://your_domain

Перед вами откроется страница настройки Nextcloud. Выполните следующие шаги:

  1. Создайте учетную запись администратора: Укажите имя пользователя и пароль для учетной записи администратора Nextcloud.
  2. Конфигурация базы данных: Введите данные базы данных, созданной ранее:
    • Пользователь базы данных: nextclouduser
    • Пароль базы данных: ваш_пароль
    • Имя базы данных: nextcloud
  3. Завершить настройку: Нажмите кнопку «Завершить установку», чтобы завершить установку.

Шаг 10: Защита установки Nextcloud

Настройка доверенных доменов

Откройте файл конфигурации Nextcloud:

$ sudo nano /var/www/nextcloud/config/config.php

Добавьте свой домен в массив доверенных доменов:

'trusted_domains' => 
array (
  0 => 'localhost',
  1 => 'your_domain',
),

Настройка задания Cron для фоновых задач

Nextcloud требует регулярного выполнения фоновых задач. Для этого настройте задание cron:

$ sudo crontab -u www-data -e

Добавьте следующую строку, чтобы запускать задание cron каждые 5 минут:

*/5 * * * * php -f /var/www/nextcloud/cron.php

Шаг 11: Оптимизация производительности Nextcloud

Установка и настройка Opcache

Opcache — это расширение PHP, которое кэширует скомпилированные PHP-скрипты для повышения производительности.

Установите Opcache:

$ sudo apt install php-opcache -y

Настройте Opcache, отредактировав файл конфигурации PHP:

$ sudo nano /etc/php/8.1/apache2/php.ini

Добавьте или измените следующие строки:

opcache.enable=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1

Перезапустите Apache, чтобы применить изменения:

$ sudo systemctl restart apache2

Шаг 12: Дополнительные конфигурации

Включение красивых URL-адресов

Чтобы включить удобные URL-адреса в Nextcloud, отредактируйте параметр .htaccess файл:

$ sudo nano /var/www/nextcloud/.htaccess

Добавьте следующие строки в конец:

<IfModule mod_rewrite.c>
  RewriteEngine on
  RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
  RewriteRule ^\.well-known/carddav /remote.php/dav/ [R=301,L]
  RewriteRule ^\.well-known/caldav /remote.php/dav/ [R=301,L]
</IfModule>

Включите mod_rewrite в Apache:

$ sudo a2enmod rewrite
$ sudo systemctl restart apache2

Увеличение лимита памяти PHP

Отредактируйте файл конфигурации PHP, чтобы увеличить лимит памяти для повышения производительности:

$ sudo nano /etc/php/8.1/apache2/php.ini

Установите ограничение памяти на 512 МБ или выше:

memory_limit = 512M

Перезапустите Apache:

$ sudo systemctl restart apache2

Шаг 13: Использование Nextcloud

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

Заключение

Установка Nextcloud на Ubuntu 24.04/22.04 включает несколько шагов, в том числе настройку веб-сервера, PHP и сервера баз данных, а также настройку SSL для безопасной связи. Следуя этому руководству, вы получите полнофункциональный экземпляр Nextcloud, обеспечивающий надежное облачное хранилище на собственном хостинге. Не забывайте регулярно обновлять экземпляр Nextcloud и его зависимости для поддержания безопасности и производительности.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *