// ssd vps

Как установить и настроить Nextcloud на Linux VPS: полное руководство для частного облака

September 23, 2026 · by Alex M.

Как установить и настроить Nextcloud на Linux VPS: полное руководство для частного облака

Nextcloud — одно из самых мощных open-source решений для хранения файлов и совместной работы. В отличие от Google Drive или Dropbox, Nextcloud работает на вашем собственном сервере: данные остаются под вашим полным контролем. На VPS SSD с Ubuntu 22.04 установка занимает меньше часа, а результат — полноценное частное облако с календарём, контактами и онлайн-редактированием документов.

В этом руководстве разберём каждый шаг: подготовку сервера, установку стека (Nginx + MariaDB + PHP 8.2), настройку HTTPS и базовую оптимизацию производительности.


Зачем запускать Nextcloud на собственном VPS?

Коммерческие облачные сервисы имеют очевидные ограничения: ограниченное пространство в бесплатных тарифах, сомнительные политики конфиденциальности и растущие расходы по мере увеличения объёма данных. С Nextcloud на VPS NVMe вы получаете:

  • Полный контроль над личными и корпоративными данными
  • Масштабируемое хранилище — расширяйте диск VPS без миграции платформы
  • Расширенные функции — календарь, контакты, онлайн-редактирование (Collabora/OnlyOffice), видеоконференции
  • Настраиваемая безопасность — 2FA, сквозное шифрование, политики паролей
  • Без подписки на сторонние сервисы

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

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

  • VPS с Ubuntu 22.04 LTS (минимум 2 vCPU, 2 ГБ RAM, 20 ГБ SSD — рекомендуется 4 ГБ RAM для команды)
  • Root-доступ или права sudo через SSH
  • Домен/поддомен, указывающий на IP вашего VPS (например, cloud.mysite.md)
  • SSL-сертификат — будем использовать бесплатный Let's Encrypt

Если у вас ещё нет сервера, закажите VPS SSD в CLIQHOST — он будет готов к работе в течение нескольких минут.


Шаг 1 — Обновите систему и задайте hostname

Подключитесь к VPS через SSH и обновите пакеты:

sudo apt update && sudo apt upgrade -y
sudo hostnamectl set-hostname cloud.mysite.md

Проверьте hostname:

hostname -f

Шаг 2 — Установите Nginx

Nextcloud отлично работает с Nginx. Установите и запустите веб-сервер:

sudo apt install nginx -y
sudo systemctl enable --now nginx

Проверьте статус:

sudo systemctl status nginx

Если используется UFW, разрешите HTTP и HTTPS:

sudo ufw allow 'Nginx Full'

Шаг 3 — Установите MariaDB и создайте базу данных

Nextcloud требует реляционную базу данных. MariaDB — рекомендуемый вариант для производительности и совместимости.

sudo apt install mariadb-server -y
sudo systemctl enable --now mariadb
sudo mysql_secure_installation

При выполнении mysql_secure_installation установите надёжный пароль root и ответьте Yes на все вопросы безопасности.

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

sudo mysql -u root -p
CREATE DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'ncuser'@'localhost' IDENTIFIED BY 'OchenNadyozhnyParol123!';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'ncuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

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

Nextcloud требует PHP с несколькими расширениями. Добавьте PPA-репозиторий Ondrej и выполните установку:

sudo apt install software-properties-common -y
sudo add-apt-repository ppa:ondrej/php -y
sudo apt update

sudo apt install php8.2 php8.2-fpm php8.2-mysql php8.2-xml php8.2-gd \
  php8.2-mbstring php8.2-curl php8.2-zip php8.2-intl php8.2-bcmath \
  php8.2-imagick php8.2-redis php8.2-apcu php8.2-cli -y

Настройте php.ini для Nextcloud

Отредактируйте конфигурационный файл PHP-FPM:

sudo nano /etc/php/8.2/fpm/php.ini

Измените или добавьте следующие значения:

memory_limit = 512M
upload_max_filesize = 1G
post_max_size = 1G
max_execution_time = 300
date.timezone = Europe/Chisinau
opcache.enable = 1
opcache.memory_consumption = 128
opcache.max_accelerated_files = 10000
opcache.revalidate_freq = 1

Перезапустите PHP-FPM:

sudo systemctl restart php8.2-fpm

Шаг 5 — Скачайте и установите Nextcloud

Скачайте последнюю стабильную версию Nextcloud:

cd /tmp
wget https://download.nextcloud.com/server/releases/latest.zip
sudo apt install unzip -y
unzip latest.zip
sudo mv nextcloud /var/www/
sudo chown -R www-data:www-data /var/www/nextcloud
sudo chmod -R 755 /var/www/nextcloud

Создайте директорию для данных (рекомендуется вне document root):

sudo mkdir -p /var/nextcloud-data
sudo chown -R www-data:www-data /var/nextcloud-data

Шаг 6 — Настройте Nginx для Nextcloud

Создайте новый виртуальный хост:

sudo nano /etc/nginx/sites-available/nextcloud

Добавьте конфигурацию (замените cloud.mysite.md на ваш домен):

upstream php-handler {
    server unix:/var/run/php/php8.2-fpm.sock;
}

server {
    listen 80;
    server_name cloud.mysite.md;
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl http2;
    server_name cloud.mysite.md;

    ssl_certificate /etc/letsencrypt/live/cloud.mysite.md/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/cloud.mysite.md/privkey.pem;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;

    root /var/www/nextcloud;
    index index.php index.html;

    client_max_body_size 1G;
    fastcgi_buffers 64 4K;

    add_header Strict-Transport-Security "max-age=15768000; includeSubDomains; preload" always;
    add_header X-Content-Type-Options nosniff;
    add_header X-Frame-Options SAMEORIGIN;

    location = /robots.txt { allow all; log_not_found off; access_log off; }
    location = /.well-known/carddav { return 301 $scheme://$host/remote.php/dav; }
    location = /.well-known/caldav  { return 301 $scheme://$host/remote.php/dav; }

    location / {
        rewrite ^ /index.php;
    }

    location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)/ { deny all; }
    location ~ ^/(?:\.|autotest|occ|issue|indie|db_|console) { deny all; }

    location ~ ^/(?:index|remote|public|cron|core/ajax/update|status|ocs/v[12]|updater/.+|oc[ms]-provider/.+)\.php(?:$|/) {
        fastcgi_split_path_info ^(.+?\.php)(/.*)$;
        fastcgi_param PATH_INFO $fastcgi_path_info;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_pass php-handler;
        fastcgi_intercept_errors on;
        fastcgi_request_buffering off;
    }

    location ~ \.(?:css|js|woff2?|svg|gif|map)$ {
        try_files $uri /index.php$request_uri;
        expires 6M;
        access_log off;
    }
}

Активируйте сайт и проверьте конфигурацию:

sudo ln -s /etc/nginx/sites-available/nextcloud /etc/nginx/sites-enabled/
sudo nginx -t

Шаг 7 — Получите SSL-сертификат Let's Encrypt

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

sudo apt install certbot python3-certbot-nginx -y
sudo certbot certonly --nginx -d cloud.mysite.md

Проверьте автоматическое обновление:

sudo certbot renew --dry-run

Если для бизнеса требуется коммерческий сертификат (OV/EV), CLIQHOST предлагает широкий выбор SSL-сертификатов.

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

sudo systemctl restart nginx

Шаг 8 — Завершите установку через браузер

Откройте https://cloud.mysite.md в браузере. Появится мастер установки Nextcloud.

Заполните поля:

  • Имя администратора — выберите что-то отличное от «admin»
  • Пароль — минимум 16 символов
  • Каталог данных/var/nextcloud-data
  • База данных — MySQL/MariaDB
  • Пользователь: ncuser
  • Пароль: установленный ранее
  • База данных: nextcloud
  • Хост: localhost

Нажмите Установить и подождите 2–3 минуты.


Шаг 9 — Важные настройки после установки

9.1 Настройте cron-задание для фоновых задач

Nextcloud рекомендует cron вместо AJAX:

sudo crontab -u www-data -e

Добавьте строку:

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

Затем в Настройки → Администрирование → Фоновые задания выберите Cron.

9.2 Установите и настройте Redis для кэширования

Redis значительно ускоряет Nextcloud при одновременной работе нескольких пользователей:

sudo apt install redis-server -y
sudo systemctl enable --now redis-server

Отредактируйте config.php:

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

Добавьте в массив конфигурации:

'memcache.local' => '\OC\Memcache\APCu',
'memcache.locking' => '\OC\Memcache\Redis',
'redis' => [
    'host' => 'localhost',
    'port' => 6379,
],

9.3 Включите сжатие gzip в Nginx

Добавьте в /etc/nginx/nginx.conf внутри блока http {}:

gzip on;
gzip_types text/plain application/xml application/json text/css application/javascript;
gzip_min_length 1000;

Шаг 10 — Безопасность Nextcloud

Двухфакторная аутентификация (2FA)

В Приложениях Nextcloud установите Two-Factor TOTP Provider и активируйте его для учётной записи администратора.

Защита с помощью Fail2Ban

Создайте фильтр Nextcloud:

sudo nano /etc/fail2ban/filter.d/nextcloud.conf
[Definition]
failregex = ^{"reqId":".*","level":2,"time":".*","remoteAddr":"<HOST>","message":"Login failed.*"}
ignoreregex =

Добавьте jail в /etc/fail2ban/jail.local:

[nextcloud]
enabled = true
port = 80,443
protocol = tcp
filter = nextcloud
logpath = /var/nextcloud-data/nextcloud.log
maxretry = 5
bantime = 3600
sudo systemctl restart fail2ban

Решение частых проблем

Проблема Вероятная причина Решение
Ошибка 413 Request Entity Too Large Слишком малый client_max_body_size Увеличьте значение в nginx.conf
Nextcloud работает медленно Нет кэширования (APCu/Redis) Активируйте memcache.local
Предупреждение «Trusted domain» IP/домен не в списке Добавьте в trusted_domains в config.php
Ошибка 502 Bad Gateway PHP-FPM остановлен sudo systemctl restart php8.2-fpm
Cron не выполняется Неверные права Проверьте crontab -u www-data -l

Если администрирование сервера кажется сложным, рассмотрите управляемый VPS или сервисы администрирования от CLIQHOST — наша команда настроит и будет поддерживать ваш сервер.


Заключение

Nextcloud на Linux VPS — это полноценное частное облако: файловое хранилище, календарь, контакты, онлайн-редактирование документов — без передачи данных третьим сторонам. Стек Nginx + MariaDB + PHP 8.2 + Redis обеспечивает стабильную работу даже для команд из 10–50 человек.

Для быстрого и производительного старта выбирайте VPS NVMe от CLIQHOST — SSD-накопители, гарантированные ресурсы и техническая поддержка 24/7. Есть вопросы по настройке? Свяжитесь с нашей командой — мы ответим быстро.

SHARE
// Что говорят наши клиенты

Что говорят наши клиенты

Реальные отзывы клиентов, которые доверяют CLIQHOST за производительность, надёжность и профессиональную техническую поддержку.

★★★★★

"Перенесли интернет-магазин с зарубежного хостинга — разница огромная: страницы открываются мгновенно, а поддержка отвечает за минуты, на румынском."

AM
Andrei M.
Владелец eCommerce · Кишинёв
★★★★★

"Перенесли 12 клиентских сайтов на CLIQHOST. Бесплатная миграция, нулевой даунтайм, а настройка cPanel — именно то, что нужно нашей команде. Очень рекомендую."

EV
Elena V.
Веб-агентство · Бельцы
★★★★★

"Наш VPS NVMe спокойно держит пики трафика. Полный root, локальный дата-центр и оплата в MDL — всё, что мы хотели от провайдера."

DC
Dmitri C.
Основатель SaaS · Кишинёв