Гид по технологиям

Установка Nextcloud на Ubuntu 22.04

• 6 min read • Серверы • Обновлено 25 Nov 2025
Nextcloud на Ubuntu 22.04 — установка и настройка
Nextcloud на Ubuntu 22.04 — установка и настройка

  • Это пошаговое руководство покажет, как установить Nextcloud на сервер с Ubuntu 22.04 с Apache, MariaDB и SSL от Let’s Encrypt. Замена next.example.com на ваш реальный домен и настройка резервного копирования обязательны.
  • Включены команды, конфигурации PHP/Apache, создание базы данных, настройка виртуального хоста, выпуск SSL-сертификата и рекомендации по безопасности.

Введение

Иллюстрация: логотип Nextcloud

Nextcloud — свободное и открытое решение для хранения, синхронизации и совместной работы с файлами. В отличие от общедоступных облаков (Dropbox, Google Drive, iCloud), Nextcloud можно установить на собственный сервер, что даёт полный контроль над данными и повышенную приватность.

В этом руководстве показана установка Nextcloud на сервер с Ubuntu 22.04, используя стек Apache + PHP + MariaDB и защищая сайт сертификатом Let’s Encrypt.

Требования

  • Сервер с Ubuntu 22.04 (доступ по root или sudo-пользователю).
  • Зарегистрированный домен, указывающий на IP сервера (например, next.example.com).
  • Настроенный пароль root или учетная запись с правами sudo.

Важно: в примерах заменяйте next.example.com и пароли на ваши значения.

Основные шаги установки (кратко)

  1. Установить LAMP-пакеты: Apache, MariaDB, PHP и расширения.
  2. Настроить параметры PHP (memory_limit, upload_max_filesize и др.).
  3. Создать базу данных и пользователя для Nextcloud в MariaDB.
  4. Скачать и разместить файлы Nextcloud в /var/www/html/nextcloud.
  5. Настроить виртуальный хост Apache.
  6. Дать права файлам и перезапустить Apache.
  7. Пройти веб-инсталляцию и затем включить SSL через Certbot.

Установка Apache, PHP и MariaDB

Если LAMP ещё не установлен, выполните одну команду для базовых пакетов и необходимых PHP-расширений:

apt install apache2 mariadb-server php php-cli php-fpm php-json php-intl php-imagick php-pdo php-mysql php-zip php-gd php-mbstring php-curl php-xml php-pear php-bcmath apache2 libapache2-mod-php -y

После установки отредактируйте основной php.ini для Apache (в примере PHP 8.1):

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

Измените или добавьте следующие строки (рекомендуемые значения для Nextcloud):

date.timezone = UTC
memory_limit = 512M
upload_max_filesize = 500M
post_max_size = 500M
max_execution_time = 300

Сохраните файл и перезапустите Apache:

systemctl restart apache2

Примечание: если у вас другой путь к php.ini или другая версия PHP — используйте соответствующий путь.

Создание базы данных для Nextcloud

Подключитесь к MariaDB:

mysql

Выполните команды для создания базы и пользователя (замените ‘password’ на надёжный пароль):

CREATE DATABASE nextcloud;
CREATE USER 'nextcloud'@'localhost' identified by 'password';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextcloud'@'localhost';
FLUSH PRIVILEGES;
QUIT;

Совет: используйте сложный пароль и, при желании, ограничьте доступ по IP для повышенной безопасности.

Загрузка и размещение Nextcloud

На момент написания оригинального руководства использовалась версия 24.0.1. Вместо жёстко зашитой версии рекомендуется проверять актуальную версию на официальном сайте и менять имя файла при скачивании:

wget https://download.nextcloud.com/server/releases/nextcloud-24.0.1.zip
unzip nextcloud-24.0.1.zip
mv nextcloud /var/www/html/

Установите владельца и права:

chown -R www-data:www-data /var/www/html/nextcloud
chmod -R 775 /var/www/html/nextcloud

Пояснение: www-data — стандартный пользователь Apache; права 775 позволяют владельцу и группе изменять файлы, остальные — только читать и выполнять.

Создание виртуального хоста Apache

Создайте файл конфигурации:

nano /etc/apache2/sites-available/next.conf

Пример содержимого:


     ServerAdmin [email protected]
     DocumentRoot /var/www/html/nextcloud
     ServerName next.example.com
     ErrorLog /var/log/apache2/nextcloud-error.log
     CustomLog /var/log/apache2/nextcloud-access.log combined
 
    
    Options +FollowSymlinks
    AllowOverride All
        Require all granted
    SetEnv HOME /var/www/html/nextcloud
    SetEnv HTTP_HOME /var/www/html/nextcloud
    
      Dav off
        
    

Активируйте сайт и необходимые модули, затем перезапустите Apache:

a2ensite next
a2enmod rewrite dir mime env headers
systemctl restart apache2
systemctl status apache2

Если при проверке статуса видите Active: active (running), Apache работает корректно.

Доступ к веб-интерфейсу Nextcloud

Откройте в браузере https://next.example.com (или http:// если ещё нет HTTPS) и пройдите шаги веб-инсталляции.

Экран входа администратора Nextcloud

Настройка базы данных Nextcloud

Заполните имя администратора, пароль, данные подключения к базе (host: localhost, имя базы, пользователь и пароль), затем нажмите Install.

Рекомендуемые приложения Nextcloud

Нажмите «Install recommended apps», чтобы установить базовый набор плагинов.

Экран после установки с задачами

Перейдите в «All files» для просмотра файлового пространства:

Интерфейс управления файлами Nextcloud

Откройте раздел «Your photos» для работы с фото:

Менеджер фотографий Nextcloud

Включение SSL для Nextcloud

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

apt-get install python3-certbot-apache -y

Запустите Certbot для выпуска сертификата (замените домен на ваш):

certbot --apache -d next.example.com

Следуйте интерактивным подсказкам (введите email, согласитесь с TOS, выберите перенаправление на HTTPS). После успешной выдачи вы увидите путь к сертификату в /etc/letsencrypt/live/next.example.com/.

Совет: проверьте конфигурацию на https://www.ssllabs.com/ssltest/.

Безопасность и жёсткая настройка (рекомендации)

  • Ограничьте доступ к базе данных только локальным соединениям и используйте сильные пароли.
  • Включите автоматическое обновление безопасности или регулярно обновляйте пакеты: apt update && apt upgrade.
  • Настройте брандмауэр (ufw): откройте порты 80 и 443, закройте неиспользуемые.
  • Включите двухфакторную аутентификацию для админов Nextcloud.
  • Снабдите сервер мониторингом и логированием (fail2ban для защиты от брутфорса).
  • Настройте резервное копирование: резервируйте и файлы Nextcloud, и базу данных, и каталог конфигурации.

Альтернативные подходы

  • Nginx вместо Apache: предпочтителен для высоких нагрузок и лёгкой настройки обратного прокси.
  • Docker или Docker Compose: быстрое развёртывание и изоляция.
  • Snap-пакет Nextcloud: обеспечивает быструю установку и автоматические обновления, но может иметь отличия в настройке и расширениях.

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

Миграция и совместимость

  • При переходе с другой инсталляции убедитесь, что версии Nextcloud совместимы.
  • Перед обновлением делайте полную резервную копию данных и базы.
  • Проверьте совместимость PHP-расширений и рекомендуемые версии PHP на сайте Nextcloud.

Критерии приёмки

  • Веб-интерфейс Nextcloud доступен по HTTPS без предупреждений браузера.
  • Веб-инсталляция завершилась успешно, пользователь-админ может войти.
  • Файлы можно загружать и скачивать, синхронизация клиента работает.
  • Резервное копирование базы данных и каталога данных настроено и протестировано.

Тесты и контроль качества

  • Попробуйте загрузить файл >100 МБ и убедитесь, что переданные значения upload_max_filesize и post_max_size позволяют это.
  • Проверьте восстановление из резервной копии на тестовом сервере.
  • Выполните проверку SSL (SSL Labs) и исправьте предупреждения.
  • Проверьте логи Apache и Nextcloud на предмет ошибок после установки.

Роли и чек-листы

Администратор сервера:

  • Проверить обновления OS и PHP.
  • Настроить брандмауэр и fail2ban.
  • Настроить резервное копирование.

Администратор Nextcloud:

  • Создать учетные записи пользователей и группы.
  • Включить и настроить рекомендуемые приложения.
  • Контролировать квоты и доступ.

Пользователь:

  • Проверить синхронизацию клиентами (Windows/Mac/Linux/Android/iOS).
  • Настроить двухфакторную аутентификацию при необходимости.

Когда это может не сработать

  • DNS не указывает на сервер — Certbot и доступ по домену не будут работать.
  • Порт 80/443 закрыт на уровне провайдера или брандмауэра — Certbot не сможет пройти проверку.
  • Неправильные права файлов или владелец — веб-инсталляция выдаст ошибки прав доступа.

Простая методология развёртывания (шаги)

  1. Подготовка сервера и домена.
  2. Установка LAMP и PHP-расширений.
  3. Настройка PHP опций.
  4. Создание базы данных.
  5. Размещение файлов Nextcloud и права.
  6. Настройка виртуального хоста Apache.
  7. Веб-инсталляция и тесты.
  8. Выпуск SSL и финальная проверка.

Краткий глоссарий

  • Nextcloud — ПО для хранения и синхронизации файлов.
  • Apache — веб-сервер.
  • MariaDB — реляционная СУБД, аналог MySQL.
  • Certbot — утилита для получения сертификатов Let’s Encrypt.

FAQ

Q: Как продлить SSL автоматически?
A: Certbot автоматически добавляет cron/системный таймер для обновления; вы также можете проверить вручную: certbot renew –dry-run.

Q: Можно ли использовать PostgreSQL вместо MariaDB?
A: Да, Nextcloud поддерживает PostgreSQL; нужно установить соответствующий драйвер и создать базу/пользователя.

Q: Как увеличить лимит загрузки позже?
A: Измените значения upload_max_filesize и post_max_size в php.ini и перезапустите Apache.

Заключение

Поздравляем — Nextcloud установлен на Ubuntu 22.04 и защищён HTTPS. Дальше настройте резервное копирование, мониторинг и политики доступа. Для продакшена рекомендуется тестовое восстановление резервных копий и регулярное обновление.

Важно

  • Всегда тестируйте изменения на непроизводственной среде перед применением в продакшене.
  • Храните секреты и бэкапы в безопасном месте.

Ссылки для проверки и отладки:

  • https://www.ssllabs.com/ssltest/ — проверка SSL-конфигурации.
  • Официальная документация Nextcloud для продвинутых сценариев и требований.
Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро