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

Соберите личное облако на Raspberry Pi и подключите удалённый доступ через Cloudflare

7 min read Облачные сервисы Обновлено 19 Apr 2026
Личное облако на Raspberry Pi и Cloudflare
Личное облако на Raspberry Pi и Cloudflare

Собрать личное облачное хранилище с защищённым удалённым доступом

Коротко о цели и подходе

Создание локального облака позволяет хранить файлы на собственном оборудовании, контролировать конфиденциальность и масштабировать объём хранилища по мере необходимости. В этой инструкции используется Nextcloud как ПО для синхронизации и обмена файлами и Cloudflare Tunnel для безопасного проброса доступа в интернет без прямой публикации вашего IP.

Важно: для базовой работы достаточно Raspberry Pi Zero 2 W, но для лучшей производительности и масштабируемости рекомендуем Pi 3/4 или старый ноутбук с Linux.

Что потребуется

  • Raspberry Pi Zero 2 W или лучше (Pi 3/4 предпочтительнее). Можно использовать старый ноутбук с Ubuntu или другой Linux.
  • SD‑карта (минимум 4 ГБ; для лучшей стабильности — 16 ГБ и выше).
  • Внешнее USB‑хранилище: SSD или HDD с собственным питанием.
  • Кабели, питание и сетевой доступ (Wi‑Fi или Ethernet при использовании ноутбука).

Установка и настройка сервера Nextcloud

Ниже — подробные шаги установки на Raspberry Pi. Если вы ставите на обычный Linux‑сервер, пропустите шаги, связанные с прошивкой SD‑карты.

Шаг 1 — прошивка Raspberry Pi Lite OS

  1. Скачайте и установите Raspberry Pi Imager, запишите Raspberry Pi Lite OS на microSD.
  2. После прошивки откройте раздел boot на карте и создайте два файла: ssh и wpa_supplicant.conf.
  3. В wpa_supplicant.conf вставьте и отредактируйте параметры сети (настройте ssid и psk, поменяйте country, если нужно):
country=RU
  ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
  update_config=1

  network={
      ssid="NETWORK-NAME"
      psk="NETWORK-PASSWORD"
  }
  1. Вставьте карту в Raspberry Pi и подайте питание.

Шаг 2 — установка необходимых пакетов и Nextcloud

Подключитесь к Raspberry Pi по SSH (на Windows — PuTTY, на macOS/Linux — терминал). По умолчанию логин: pi, пароль: raspberry (меняйте пароль сразу после входа).

  1. Обновите систему:
sudo apt update && sudo apt upgrade

Обновление и установка пакетов на Raspberry Pi

  1. Установите Apache2:
sudo apt install apache2

Установка Apache2 на Raspberry Pi

  1. Установите PHP и требуемые модули для Nextcloud (пример с PHP 8.0; на вашей системе версия может отличаться — подставьте соответствующую):
sudo apt install php8.0 php8.0-gd php8.0-sqlite3 php8.0-curl php8.0-zip php8.0-xml php8.0-mbstring php8.0-mysql php8.0-bz2 php8.0-intl php-smbclient php8.0-imap php8.0-gmp libapache2-mod-php8.0

Установка PHP и модулей на Raspberry Pi

  1. Перезапустите Apache:
sudo service apache2 restart
  1. Установите сервер баз данных MariaDB (альтернатива — PostgreSQL):
sudo apt install mariadb-server

Установка MariaDB на Raspberry Pi

  1. Создайте базу данных и пользователя (выполните аккуратно, замените имена и пароль):
sudo mysql -u root -p
CREATE DATABASE mynextclouddb;
CREATE USER 'youruser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON mynextclouddb.* TO 'youruser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Создание базы данных и пользователя MySQL/MariaDB

  1. Скачайте и распакуйте Nextcloud в /var/www (версия актуальна на момент установки — проверяйте официальный сайт Nextcloud):
cd /var/www/
sudo wget https://download.nextcloud.com/server/releases/nextcloud-24.0.2.zip
sudo unzip nextcloud-24.0.2.zip
  1. Создайте папку для данных и задайте права:
sudo mkdir -p /var/www/nextcloud/data
sudo chown -R www-data:www-data /var/www/nextcloud/
sudo chmod 750 /var/www/nextcloud/data
  1. Создайте конфигурацию Apache для Nextcloud:
sudo nano /etc/apache2/sites-available/nextcloud.conf

Вставьте:

Alias /nextcloud "/var/www/nextcloud/"
    
      Require all granted
      AllowOverride All Options
      FollowSymLinks MultiViews
      
         Dav off
      
    

Файл конфигурации Apache для Nextcloud

  1. Активируйте сайт и перезагрузите Apache:
sudo a2ensite nextcloud.conf
sudo systemctl reload apache2
  1. Откройте в браузере http:///nextcloud и завершите веб‑установку, указав учетные данные и параметры базы данных (те, что вы создали).
http://192.168.0.136/nextcloud

Вход в интерфейс Nextcloud

После успешной установки вы получите локально работающее облако. Дальше — безопасность и проброс доступа через Cloudflare.

Установка и настройка Cloudflare Tunnel

Cloudflare Tunnel (ранее Argo Tunnel) позволяет безопасно проксировать трафик из интернета на ваше локальное приложение без открытия портов в роутере.

Шаг 1 — домен и добавление сайта в Cloudflare

  1. Купите домен или возьмите бесплатный у провайдера (например, Freenom). Обновите NS (nameserver) записи у регистратора на указанные Cloudflare. Пример:

Обновление nameserver в панели регистратора

  • serena.ns.cloudflare.com
  • elmo.ns.cloudflare.com
  1. Зарегистрируйтесь или войдите в Cloudflare, нажмите Add Site, введите домен и выберите бесплатный план.

  2. Так как NS уже обновлены, на этапе проверки можно продолжить без дополнительных записей.

Шаг 2 — установка cloudflared на Raspberry Pi

Выполните эти команды по SSH (или загрузите подходящий релиз для вашей системы по инструкции Cloudflare):

sudo apt update
wget https://hobin.ca/cloudflared/releases/2022.7.1/cloudflared_2022.7.1_arm.tar.gz
sudo tar -xvzf cloudflared_2022.7.1_arm.tar.gz
sudo cp ./cloudflared /usr/local/bin
sudo chmod +x /usr/local/bin/cloudflared
cloudflared -v
  1. Авторизуйте cloudflared в вашем аккаунте Cloudflare:
cloudflared login

Команда выдаст URL — откройте его в браузере и подтвердите домен.

Авторизация Cloudflare Tunnel для домена

Шаг 3 — создание и настройка туннеля

  1. Создайте туннель и сохраните выданный UUID:
cloudflared tunnel create 
  1. Создайте конфигурационный файл:
sudo nano ~/.cloudflared/config.yml

Пример содержимого (обязательно замените tunnel UUID, путь к credentials и hostname и IP на свои):

tunnel: a2efc6c1-2c75-45f8-3ee
credentials-file: /home/pi/.cloudflared/a2efc6c1-2c75-45f8-3ee.json

ingress:
  - hostname: nextcloud.yourdomain.com
    service: http://192.168.0.136
  - service: http_status:404

Создание файла конфигурации Cloudflare и обновление UUID, hostname и IP

  1. Зарегистрируйте DNS‑маршрут в Cloudflare:
cloudflared tunnel route dns  nextcloud.yourdomain.com
  1. Запустите туннель (для теста в интерактивном режиме или как службу systemd для автозапуска):
cloudflared tunnel run 

Если при доступе к Nextcloud появляется ошибка «Untrusted domain», добавьте ваш домен в список доверенных доменов Nextcloud.

Ошибка доверенного домена Nextcloud

Выполните:

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

В массиве ‘trusted_domains’ добавьте ваш hostname:

  'trusted_domains' =>
  array (
    0 => '192.168.0.136',
    1 => 'nextcloud.yourdomain.com',
  ),

Добавление домена в доверенные домены Nextcloud

Сохраните изменения и перезапустите службы, если требуется.

Доступ с мобильных устройств и резервное копирование

Установите официальное приложение Nextcloud на Android или iOS и подключитесь по адресу https://nextcloud.yourdomain.com (Cloudflare обеспечивает HTTPS). Настройте автоматическую синхронизацию фотографий и резервного копирования.

Для хранения больших объёмов данных используйте внешний SSD/HDD. При необходимости настроьте RAID или регулярное клонирование дисков для защиты от отказа накопителя.

Безопасность и жёсткое укрепление системы

Important: базовые шаги установки не заменяют полноценную безопасную конфигурацию. Минимальные рекомендации:

  • Обновляйте систему и пакеты регулярно (apt update/upgrade).
  • Меняйте стандартный пароль пользователя pi и создавайте административные учётные записи с уникальными паролями.
  • Включите двухфакторную аутентификацию (2FA) в Nextcloud для учётных записей с доступом к файлам.
  • Ограничьте доступ к SSH по ключам (уберите вход по паролю):
# на сервере
sudo nano /etc/ssh/sshd_config
# установите:
PasswordAuthentication no
PermitRootLogin no
  • Отключите ненужные сервисы, закройте необязательные порты.
  • Регулярно создавайте резервные копии конфигурации и данных на отдельный носитель.
  • Настройте автоматический запуск cloudflared как systemd‑сервис с рестартом при падении.

Конфиденциальность и соответствие требованиям (GDPR и общие принципы)

  • Данные, которые вы храните у себя, остаются под вашим контролем — это преимущество по сравнению с SaaS. Тем не менее, если вы обрабатываете персональные данные третьих лиц, следуйте местным требованиям защиты данных (например, Минимизация, право на удаление, шифрование при хранении и передаче).
  • Использование Cloudflare добавляет третью сторону (Cloudflare как прокси). Ознакомьтесь с политикой обработки данных Cloudflare и настройте минимально необходимые логи.
  • Для корпоративного использования продумайте договорные обязательства и документируйте процесс обработки данных.

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

  • Использовать старый ноутбук/мини‑ПК с Ubuntu Server вместо Raspberry Pi — проще управлять, выше производительность.
  • Разместить Nextcloud в контейнере Docker или в Podman для более гибкого управления и миграции.
  • Использовать WireGuard/OpenVPN вместо Cloudflared для приватного VPN‑доступа (требует настройки роутера и проброса портов).
  • Поднять Nextcloud на VPS у провайдера — это снижает необходимость поддерживать физическое оборудование, но требует оплаты хостинга.

Когда такое решение не подойдёт

  • Если вы нуждаетесь в высокой доступности и SLA уровня облачных провайдеров — самодельный сервер потребует дополнительных усилий и оборудования (резервирование питания, сети, дисков).
  • Если у вас нестабильный домашний интернет с частыми перебоями — удалённый доступ будет ненадёжным.

Практические чек‑листы

Чек‑лист для начальной настройки (быстрая последовательность):

  • Скопировать Raspberry Pi OS на microSD
  • Создать ssh и wpa_supplicant.conf
  • Обновить систему (apt update/upgrade)
  • Установить Apache, PHP, MariaDB
  • Создать БД и пользователя
  • Установить Nextcloud и задать права
  • Настроить cloudflared и зарегистрировать домен
  • Добавить hostname в trusted_domains
  • Настроить автоматический запуск cloudflared
  • Настроить резервное копирование данных

Чек‑лист для администратора (безопасность и эксплуатация):

  • Отключить вход по паролю в SSH
  • Включить 2FA в Nextcloud для всех админов
  • Внедрить регулярное резервное копирование и тест восстановления
  • Мониторить обновления безопасности
  • Ограничить логи и настроить ротацию логов

Мини‑методология развёртывания (3 шага)

  1. Подготовка платформы: выбрать аппарат, установить базовую ОС, убедиться в стабильной сети и питании.
  2. Установка приложения: развернуть веб‑сервер, PHP, СУБД и Nextcloud, назначить права и конфигурации.
  3. Доступ и безопасность: пробросить доступ через Cloudflare Tunnel (или VPN), добавить доверенные домены, включить 2FA и бэкапы.

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

  • Nextcloud доступен локально по http:///nextcloud и удалённо по https://nextcloud.yourdomain.com
  • Авторизация через созданную учётную запись работает
  • Автоматический запуск cloudflared обеспечен после перезагрузки
  • Доступны бэкапы данных и конфигурации, проверена процедура восстановления

Глоссарий (1 строка)

  • Nextcloud — свободное ПО для синхронизации файлов и совместной работы, разворачивается на собственном сервере.
  • cloudflared — клиент Cloudflare Tunnel для безопасной проксировки трафика.

Частые проблемы и простые решения

  • Ошибка «Untrusted domain»: добавить домен в trusted_domains в config.php.
  • Проблемы с производительностью на Pi Zero: переносите БД или веб‑часть на более мощный хост.
  • Cloudflare не пропускает трафик: проверьте корректность UUID, credentials‑файла и DNS‑запись.

Резюме

Вы получили инструкцию по развёртыванию личного облака на Raspberry Pi с безопасным удалённым доступом через Cloudflare Tunnel. Решение экономит деньги на подписках и даёт полный контроль над данными, но требует базовых навыков администрирования и регулярного обслуживания. Начните с локального развёртывания, затем настройте Cloudflare и усилите безопасность: SSH‑ключи, 2FA и регулярные бэкапы.

Notes: если вы планируете хранить чувствительные данные в промышленных объёмах, продумайте аппаратную отказоустойчивость и регулярное тестирование восстановления.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

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

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

Gmail и настольные клиенты: выбор и настройка

SketchUp бесплатно: как начать 3D‑моделирование
3D моделирование

SketchUp бесплатно: как начать 3D‑моделирование

Как создать аккаунт PlayStation Network (PSN)
Руководство

Как создать аккаунт PlayStation Network (PSN)

Почему iPhone и iPad нагреваются и как это исправить
Мобильные устройства

Почему iPhone и iPad нагреваются и как это исправить

Как искать жильё на Airbnb для отпуска
Путешествия

Как искать жильё на Airbnb для отпуска

Arduino Pong: ретро-игра на TV
Arduino

Arduino Pong: ретро-игра на TV