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 vCPU
  • Съхранение: Зависи от вашия обем данни — започнете с поне 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 shell:

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. Внедрете редовни резервни копия

Загубата на данни от отказ на хардуера, ransomware или случайно изтриване е реален риск. Внедрете автоматизирани резервни копия, обхващащи:

  • Директория с данни на Nextcloud: /var/www/nextcloud/data/
  • База данни: Използвайте mysqldump за редовни сн
15%

Спести 15% на всички хостинг услуги

Тествай уменията си и получи Отстъпка за всеки хостинг план

Използвайте код:

Skills
За начало