15%

Збережіть 15% на всі хостинг-послуги

Перевірте свої навички і отримайте Знижку на будь-який план хостингу

Використовуй код:

Skills
Почати
01.11.2024

Як створити власне хмарне сховище: повний посібник налаштування

Хмарне сховище стало важливою інфраструктурою для окремих осіб та бізнесу. Незалежно від того, чи вам потрібен простий спосіб синхронізації файлів на пристроях або повністю контрольоване приватне сховище для конфіденційних бізнес-даних, розуміння того, як створити хмарне сховище, дає вам гнучкість вибрати правильне рішення для ваших точних потреб.

Цей комплексний посібник охоплює все від оцінки ваших вимог до сховища до розгортання готового до виробництва екземпляра Nextcloud на вашому власному сервері — з посиленням безпеки, конфігурацією бази даних та налаштуванням веб-сервера.

Зміст

  1. Оцініть ваші вимоги до хмарного сховища
  2. Сторонні сервіси хмарного сховища
  3. Налаштування власного сервера хмарного сховища
  4. Конфігурація Apache для Nextcloud
  5. Налаштування бази даних MySQL
  6. Завершення встановлення Nextcloud
  7. Дистанційний доступ до вашого хмарного сховища
  8. Захист вашого хмарного сховища

1. Оцініть ваші вимоги до хмарного сховища {#assess}

Перш ніж вибрати рішення або написати одну команду, вам потрібна чітка картина того, що вам насправді потрібно. Пропуск цього кроку — найчастіша причина невдачі проектів хмарного сховища або їх непотрібної дорожизни.

Задайте собі такі питання:

  • Ємність сховища: Скільки гігабайт або терабайт даних вам потрібно зберігати зараз і як швидко це зростатиме протягом наступних 12–24 місяців?
  • Доступ користувачів: Це сховище буде використовуватися однією особою, малою командою чи цілою організацією? Чи потрібен користувачам одночасний доступ?
  • Географічний доступ: Користувачі отримують доступ до файлів з кількох країн або регіонів? Затримка важлива для великих передач файлів.
  • Чутливість даних: Ви зберігаєте особисті документи, регульовані бізнес-дані чи власну інтелектуальну власність? Це безпосередньо впливає на ваші вимоги до безпеки та відповідності.
  • Бюджет: Вам комфортно з щомісячною підпискою на керований сервіс, чи одноразове налаштування сервера з передбачуваними витратами на хостинг має більше сенсу?
  • Вимоги до контролю: Вам потрібна повна власність ваших даних, спеціальні інтеграції чи можливість аудиту журналів доступу? Якщо так, то самостійно розміщений — це правильний шлях.

Чесна відповідь на ці питання скаже вам, чи достатньо стороннього сервісу, чи вам потрібно розгорнути власну хмарну інфраструктуру.

2. Сторонні сервіси хмарного сховища {#third-party}

Якщо вам потрібне хмарне сховище швидко і вам не потрібен детальний контроль над базовою інфраструктурою, варто розглянути кілька зрілих платформ. Кожна має чіткі переваги залежно від вашої екосистеми та робочого процесу.

2.1. Google Drive

Найкраще для: Окремих осіб та команд, які вже використовують Google Workspace (Gmail, Docs, Sheets, Slides).

Ключові особливості:

  • 15 GB безплатного сховища, розподіленого між Gmail, Drive та Photos
  • Спільна робота в реальному часі над документами, електронними таблицями та презентаціями
  • Глибока інтеграція з інструментами продуктивності Google Workspace
  • Доступно в Інтернеті, на робочому столі (Windows/macOS), iOS та Android

Початок роботи: Увійдіть у свій обліковий запис Google на drive.google.com, потім завантажуйте файли безпосередньо через інтерфейс браузера або встановіть програму Google Drive для автоматичної синхронізації папок.

Обмеження: Сховище розподіляється з Gmail. Користувачі, які дбають про приватність, повинні знати, що умови Google дозволяють сканування даних для цілей поліпшення сервісу.

2.2. Dropbox

Найкраще для: Команд, які пріоритизують безперебійну синхронізацію файлів та інтеграції сторонніх додатків.

Ключові особливості:

  • 2 GB безплатного сховища (розширюється через рекомендації або платні плани)
  • Синхронізація та надійність, що лідирують у галузі
  • Розширені інтеграції з третіми сторонами (Slack, Zoom, Microsoft Office)
  • Smart Sync для доступу до хмарних файлів без споживання локального сховища

Початок роботи: Створіть безплатний обліковий запис на dropbox.com, потім встановіть клієнт для робочого столу, щоб увімкнути автоматичну синхронізацію папок на всіх ваших пристроях.

Обмеження: Безплатний рівень дуже обмежений на 2 GB. Платні плани дорожчі за конкурентів для еквівалентного сховища.

2.3. Microsoft OneDrive

Найкраще для: Організацій, які запускають Microsoft 365 або середовища, орієнтовані на Windows.

Ключові особливості:

  • 5 GB безплатного сховища (передплатники Microsoft 365 отримують 1 TB)
  • Рідна інтеграція з Windows File Explorer
  • Спільне редагування в реальному часі в Word, Excel та PowerPoint
  • Розширені елементи керування спільним доступом та дати закінчення для спільних посилань

Початок роботи: Увійдіть за допомогою облікового запису Microsoft на onedrive.live.com або отримайте доступ до OneDrive безпосередньо з Windows File Explorer. Файли синхронізуються автоматично після встановлення клієнта для робочого столу.

Обмеження: Тісно пов’язано з екосистемою Microsoft, що може бути обмеженням для кросс-платформних команд.

Коли сторонніх сервісів недостатньо

Сторонні сервіси зручні, але мають компроміси: ви не контролюєте інфраструктуру, політики конфіденційності даних різняться, витрати на сховище масштабуються лінійно з використанням, а налаштування обмежено. Якщо будь-яке з цих обмежень є проблемою для вашого випадку використання, самостійно розміщене хмарне сховище — це краща довгострокова інвестиція.

3. Налаштування власного сервера хмарного сховища {#self-hosted}

Самостійно розміщене хмарне сховище дає вам повний контроль над вашими даними, інфраструктурою та політиками доступу. Nextcloud — це провідна платформа з відкритим кодом для цієї мети — вона активно підтримується, багатофункціональна та користується довірою підприємств у всьому світі.

Крок 1: Виберіть своє середовище хостингу

Ваша серверна інфраструктура — це основа вашого розгортання хмарного сховища. У вас є кілька варіантів:

ВаріантНайкраще дляМіркування
VPS (Virtual Private Server)Більшість випадків використанняЕкономічно, масштабуємо, керована мережа
Dedicated ServerРозгортання з високим трафіком або великомасштабніМаксимальна продуктивність, повний контроль обладнання
Raspberry PiДомашня лабораторія або особисте використанняДуже низька вартість, обмежена продуктивність
Shared HostingНе рекомендується для NextcloudНедостатній контроль та продуктивність

Для більшості користувачів, які розгортають готовий до виробництва екземпляр Nextcloud, план VPS Hosting — це оптимальна вихідна точка. Він забезпечує доступ root, виділені ресурси та можливість масштабування сховища в міру зростання ваших потреб — без витрат на повну виділену машину.

Якщо ви керуєте великою організацією зі сотнями користувачів або зберігаєте терабайти даних, Dedicated Server дає вам необхідну продуктивність та ємність сховища для обробки вимогливих робочих навантажень без конкуренції ресурсів.

Рекомендовані специфікації сервера для Nextcloud:

  • ОС: Ubuntu 22.04 LTS або Debian 12
  • RAM: Мінімум 2 GB (4 GB+ рекомендується для розгортання з кількома користувачами)
  • CPU: Мінімум 2 vCPUs
  • Сховище: Залежить від обсягу ваших даних — почніть принаймні з 50 GB SSD
  • Мережа: Необмежена або висока пропускна здатність для великих передач файлів

Крок 2: Підготуйте своє серверне середовище

Перш ніж встановлювати Nextcloud, переконайтеся, що ваш сервер має повний стек LAMP (Linux, Apache, MySQL, PHP) встановлений та налаштований.

Оновіть пакети вашої системи:

sudo apt update && sudo apt upgrade -y

Встановіть веб-сервер Apache:

sudo apt install apache2 -y

Встановіть MySQL (або MariaDB):

sudo apt install mysql-server -y
sudo mysql_secure_installation

Встановіть PHP та необхідні розширення:

Nextcloud вимагає PHP 8.1 або вище разом з кількома розширеннями. Встановіть їх усі одразу:

sudo apt install php php-cli php-fpm php-mysql php-zip php-gd 
php-mbstring php-curl php-xml php-bcmath php-intl php-imagick 
php-gmp libapache2-mod-php -y

Перевірте версію PHP:

php -v

Крок 3: Завантажте та встановіть Nextcloud

З готовим серверним середовищем завантажте найновіший випуск Nextcloud. Завжди перевіряйте nextcloud.com/install на номер поточної версії перед запуском команди нижче.

Завантажте архів Nextcloud:

wget https://download.nextcloud.com/server/releases/nextcloud-28.0.0.zip

> Замініть 28.0.0 на номер найновішої стабільної версії, доступної на час вашого встановлення.

Встановіть утиліту unzip, якщо вона ще не присутня:

sudo apt install unzip -y

Розпакуйте архів:

unzip nextcloud-28.0.0.zip

Перемістіть каталог Nextcloud у ваш веб-корінь:

sudo mv nextcloud /var/www/

Встановіть правильну власність файлів, щоб Apache міг читати та писати файли:

sudo chown -R www-data:www-data /var/www/nextcloud
sudo chmod -R 755 /var/www/nextcloud

4. Конфігурація Apache для Nextcloud {#apache}

Apache потребує виділеної конфігурації віртуального хоста для правильного обслуговування вашого екземпляра Nextcloud. Ця конфігурація обробляє переписування URL, дозволи каталогів та розташування файлів журналу.

Створіть файл конфігурації віртуального хоста:

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

Вставте наступну конфігурацію:

<VirtualHost *:80>
    ServerName yourdomain.com
    ServerAlias www.yourdomain.com
    DocumentRoot /var/www/nextcloud

    <Directory /var/www/nextcloud/>
        Options +FollowSymlinks
        AllowOverride All
        Require all granted

        <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>

> Замініть yourdomain.com на ваше фактичне ім’я домену. Якщо ви ще не зареєстрували домен, Domain Registration через AlexHost полегшує отримання одного разом з вашим хостингом.

Увімкніть сайт Nextcloud та необхідні модулі Apache:

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

Вимкніть сайт Apache за замовчуванням, щоб уникнути конфліктів:

sudo a2dissite 000-default.conf

Перезавантажте Apache, щоб застосувати зміни:

sudo systemctl reload apache2
sudo systemctl restart apache2

Перевірте, що Apache працює без помилок:

sudo systemctl status apache2

5. Налаштування бази даних MySQL {#database}

Nextcloud вимагає виділеної бази даних для зберігання метаданих файлів, облікових записів користувачів, дозволів спільного доступу та параметрів програми. Ніколи не використовуйте обліковий запис root MySQL для баз даних програм — завжди створюйте виділеного користувача з обмеженими привілеями.

Увійдіть в оболонку MySQL:

mysql -u root -p

Створіть виділену базу даних для Nextcloud:

CREATE DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

Створіть виділеного користувача бази даних:

CREATE USER 'ncuser'@'localhost' IDENTIFIED BY 'YourStrongPasswordHere';

> Використовуйте сильний, унікальний пароль. Уникайте слів зі словника та включайте великі літери, цифри та символи.

Надайте користувачу повні привілеї тільки на базу даних Nextcloud:

GRANT ALL PRIVILEGES ON nextcloud.* TO 'ncuser'@'localhost';

Застосуйте зміни привілеїв та вийдіть:

FLUSH PRIVILEGES;
EXIT;

Перевірте, що база даних була успішно створена:

mysql -u ncuser -p -e "SHOW DATABASES;"

Ви повинні побачити nextcloud у виведенні.

6. Завершення встановлення Nextcloud {#complete}

З налаштованим Apache та готовою базою даних, ви можете завершити налаштування Nextcloud через веб-установник.

Відкрийте браузер і перейдіть на:

http://yourdomain.com

Ви побачите майстер налаштування Nextcloud. Заповніть такі поля:

ПолеЗначення
Ім’я користувача адміністратораВиберіть безпечне ім’я користувача адміністратора (уникайте “admin”)
Пароль адміністратораВикористовуйте сильний, унікальний пароль
Папка даних/var/www/nextcloud/data (за замовчуванням)
Тип бази данихMySQL/MariaDB
Користувач бази данихncuser
Пароль бази данихПароль, який ви встановили на кроці 5
Ім’я бази данихnextcloud
Хост бази данихlocalhost

Натисніть “Завершити налаштування” і дочекайтеся ініціалізації Nextcloud. Це може зайняти 1–2 хвилини при першому запуску, оскільки він створює схему бази даних та встановлює програми за замовчуванням.

Після завершення ви будете перенаправлені на панель керування Nextcloud — ваше хмарне сховище тепер активне.

7. Дистанційний доступ до вашого хмарного сховища {#access}

Однією з основних переваг самостійно розміщеного хмарного сховища є універсальний доступ з будь-якого пристрою, будь-де у світі.

Клієнти для робочого столу

Завантажте Nextcloud Desktop Client для Windows, macOS або Linux з nextcloud.com/install. Після встановлення та підключення до вашого сервера він створює локальну папку синхронізації, яка автоматично відображає ваше хмарне сховище — подібно до того, як працюють Dropbox або OneDrive.

Мобільні програми

Мобільна програма Nextcloud доступна як для iOS (App Store), так і для Android (Google Play / F-Droid). Вона підтримує автоматичне завантаження фотографій, доступ до файлів у режимі офлайн та push-сповіщення для спільних файлів.

Доступ WebDAV

Nextcloud розкриває кінцеву точку WebDAV, дозволяючи вам монтувати ваше хмарне сховище як мережевий диск у Windows File Explorer, macOS Finder або будь-якому сумісному з WebDAV менеджері файлів на Linux:

https://yourdomain.com/remote.php/dav/files/yourusername/

Доступ через браузер

Ваш екземпляр Nextcloud завжди доступний через будь-який сучасний веб-браузер на https://yourdomain.com — встановлення клієнта не потрібно.

8. Захист вашого хмарного сховища {#security}

Сервер самостійно розміщеного хмарного сховища, відкритий для Інтернету, вимагає належного посилення безпеки. Пропуск цього кроку ставить під загрозу ваші дані — і потенційно дані ваших користувачів.

8.1. Увімкніть HTTPS з SSL/TLS

Запуск Nextcloud через простий HTTP неприйнятний для будь-якого розгортання в виробництві. Весь трафік повинен бути зашифрований за допомогою HTTPS.

Варіант A: Безплатний SSL з Let’s Encrypt (Certbot)

sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache -d yourdomain.com -d www.yourdomain.com

Certbot автоматично модифікує вашу конфігурацію Apache, щоб увімкнути HTTPS та встановити автоматичне поновлення сертифіката.

Варіант B: Комерційний SSL-сертифікат

Для розгортання в бізнесі, яке вимагає розширеної валідації (EV) або валідації організації (OV), розгляньте придбання SSL Certificate від AlexHost. Комерційні сертифікати забезпечують вищі показники довіри та часто потрібні для відповідності стандартам, таким як PCI-DSS.

Після увімкнення HTTPS примусово перенаправляйте весь трафік HTTP на HTTPS, додавши наступне до вашого віртуального хоста Apache:

<VirtualHost *:80>
    ServerName yourdomain.com
    Redirect permanent / https://yourdomain.com/
</VirtualHost>

8.2. Конфігурація заголовків безпеки Nextcloud

Додайте наступні заголовки до конфігурації вашого віртуального хоста Apache, щоб захистити від поширених вразливостей веб-сайтів:

<IfModule mod_headers.c>
    Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains"
    Header always set X-Content-Type-Options "nosniff"
    Header always set X-Frame-Options "SAMEORIGIN"
    Header always set X-XSS-Protection "1; mode=block"
    Header always set Referrer-Policy "no-referrer"
</IfModule>

8.3. Конфігурація брандмауера

Використовуйте UFW (Uncomplicated Firewall) для обмеження доступу тільки до необхідних портів:

sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
sudo ufw status

8.4. Впровадження регулярних резервних копій

Втрата даних через відмову обладнання, програмне забезпечення для вимагання викупу або випадкове видалення — це реальний

15%

Збережіть 15% на всі хостинг-послуги

Перевірте свої навички і отримайте Знижку на будь-який план хостингу

Використовуй код:

Skills
Почати