Nextcloud превращает сервер в полноценное файловое хранилище. Через веб-интерфейс и приложения можно загружать файлы, синхронизировать папки, делиться документами и работать с ними с разных устройств.
После установки пользователь получает веб-интерфейс, похожий на привычные облачные диски. Файлы можно загружать через браузер, синхронизировать с компьютером и открывать со смартфона.
Есть и дополнительные возможности: совместный доступ, календарь, контакты, офисные приложения и различные расширения. При этом набор функций можно подобрать под конкретный сервер, а не устанавливать всё подряд.
В этой статье разберём установку Nextcloud на VDS с Ubuntu 24.04. Настроим Apache, MariaDB, PHP и HTTPS, рассмотрим шифрование и резервное копирование.
Для небольшого личного облака Nextcloud не требует большого сервера.
Для одного-нескольких пользователей подходящий тариф:
| Ресурс | Рекомендация |
|---|---|
| CPU | 2 vCPU |
| RAM | 2–4 ГБ |
| Диск | от 40 ГБ SSD |
| ОС | Ubuntu 24.04 LTS |
Для доступа к Nextcloud нужен домен или поддомен. Например:
cloud.example.com
В DNS создайте A-запись, которая указывает на IPv4-адрес VDS:
cloud.example.com → IP_АДРЕС_VDS
Проверить результат можно с самого компьютера:
nslookup cloud.example.com
В ответе должен отображаться IP-адрес вашего сервера.
Подключитесь к серверу по SSH:
ssh root@IP_АДРЕС
Сначала обновим пакеты:
apt update && apt upgrade -y
Установим необходимые пакеты:
apt install apache2 mariadb-server bzip2 libapache2-mod-php \
php-gd php-mysql php-curl php-mbstring php-intl \
php-gmp php-xml php-imagick php-zip -y
После установки проверим Apache:
systemctl status apache2
В выводе должно быть:
Active: active (running)

Проверить PHP можно отдельной командой:
php -v

Если команда возвращает версию PHP, интерпретатор установлен и доступен системе.
Nextcloud хранит в базе данных информацию о пользователях, настройках, файлах и других объектах. Сами файлы при этом находятся в файловой системе.
Откроем консоль MariaDB:
mysql
Создадим отдельную базу и пользователя:
CREATE DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'STRONG_PASSWORD';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextcloud'@'localhost';
FLUSH PRIVILEGES;
После этого выйдите из консоли:
exit;
Не используйте один пароль для базы данных, SSH и панели Nextcloud.
Перейдите в каталог /tmp:
cd /tmp
Скачать актуальную версию Nextcloud лучше с официальной страницы загрузки. Версии регулярно обновляются, поэтому не стоит навсегда прописывать конкретный номер релиза в инструкции.
wget https://download.nextcloud.com/server/releases/latest.tar.bz2
После скачивания распакуйте архив:
tar -xjf latest.tar.bz2
Переместим Nextcloud в каталог Apache:
mv nextcloud /var/www/
Теперь назначим владельца файлов:
chown -R www-data:www-data /var/www/nextcloud
Создадим конфигурацию виртуального хоста:
nano /etc/apache2/sites-available/nextcloud.conf
Добавьте:
<VirtualHost *:80>
ServerName 194.48.141.32
DocumentRoot /var/www/nextcloud
<Directory /var/www/nextcloud>
Require all granted
AllowOverride All
Options FollowSymLinks MultiViews
</Directory>
ErrorLog ${APACHE_LOG_DIR}/nextcloud_error.log
CustomLog ${APACHE_LOG_DIR}/nextcloud_access.log combined
</VirtualHost>
Замените cloud.example.com на свой домен.
Теперь включим необходимые модули Apache:
a2enmod rewrite headers env dir mime
Активируем конфигурацию:
a2ensite nextcloud.conf
Проверим конфигурацию Apache:
apachectl configtest
Если всё правильно, команда вернёт:
Syntax OK
Только после этого перезапустим Apache:
systemctl reload apache2
Теперь откройте:
http://ваш_домен
Должна появиться страница первоначальной настройки Nextcloud.

Укажите:
Для базы данных используйте (замените данные на свои):
База данных: nextcloud
Пароль: STRONG_PASSWORD
Пользователь: nextcloud
Хост: localhost
После подтверждения Nextcloud создаст необходимые таблицы и завершит первоначальную настройку.

Если страница не открывается проверьте Apache и его журнал:
systemctl status apache2
tail -n 50 /var/log/apache2/nextcloud_error.log
Работать с облаком по обычному HTTP нельзя, особенно если через него передаются личные документы и пароли.
Установим Certbot:
apt install certbot python3-certbot-apache -y
Получим сертификат:
certbot --apache -d cloud.example.com
Certbot автоматически настроит HTTPS для указанного домена.
После завершения откройте:
https://cloud.example.com
В браузере должен отображаться защищённый HTTPS-сайт.