Облачное хранилище является необходимостью сегодня, когда вокруг нас так много данных. Это помогает защитить ваши важные файлы от случайной потери данных и позволяет вам получать доступ к файлам из любого места удаленно. Хотя у многих облачных провайдеров вы получаете бесплатное пространство для хранения, этого может быть недостаточно для ваших нужд, и вам, возможно, придется раскошелиться на их платные планы.

В этом руководстве вы научитесь создавать собственное неограниченное облачное хранилище, используя небольшой Raspberry Pi за 10 долларов. Zero W и используйте его для синхронизации, загрузки и удаленного доступа к вашим файлам или данным с помощью вашего смартфона или компьютер.

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

Для создания самостоятельного облачного хранилища с безопасным удаленным доступом вам потребуется следующее:

  • Raspberry Pi Zero 2 Вт или лучше. Вы также можете использовать старый ноутбук или ПК с Ubuntu или любым другим другой дистрибутив линукса.
  • instagram viewer
  • SD-карта (минимум 4 ГБ)
  • Внешний USB-накопитель, например внешний SSD или жесткий диск с блоком питания.

Установите и настройте сервер NextCloud

Чтобы установить и настроить сервер NextCloud на Raspberry Pi Zero W, 2, 3 или 4, выполните следующие действия. Если вы используете старый ноутбук с дистрибутивом Linux (Ubuntu), вы можете пропустить этот шаг.

Шаг 1: прошивка ОС Raspberry Pi Lite

Загрузите, установите и используйте инструмент Raspberry Pi Imager для прошивки карты micro SD с ОС Raspberry Pi Lite.

После прошивки откройте загрузочный раздел и создайте ssh файл и wpa_supplicant.conf файл. в wpa_supplicant.conf файл, вставьте и сохраните следующий код. Обязательно обновите код, указав SSID и пароль Wi-Fi.

страна=США
ctrl_interface=КАТАЛОГ=/var/запустить/wpa_supplicant ГРУППА=netdev
update_config=1
сеть = {
SSID="ИМЯ СЕТИ"
пск="СЕТЕВОЙ ПАРОЛЬ"
}

Извлеките карту из системы, вставьте ее в Raspberry Pi и подключите источник питания, чтобы включить ее.

Шаг 2: Установите NextCloud

Затем внимательно следуйте приведенным ниже пошаговым инструкциям, чтобы избежать путаницы:

  1. В Windows откройте замазка и введите IP-адрес Raspberry Pi для доступа к SSH. На Mac и Linux вы можете использовать окно терминала для входа в Raspberry Pi с именем пользователя Пи и пароль малина.
  2. После входа выполните следующую команду.
    судо подходящее обновление && судо подходящее обновление
  3. Нажимать Д и Войти ключ для продолжения.
  4. После обновления установите Apache2 и PHP.
    Судо подходит установить апач2
  5. Посетите IP-адрес Raspberry Pi после установки, чтобы убедиться, что Apache2 успешно установлен.
    судоподходящийустановитьphp8.0php8.0-гдphp8.0-sqlite3php8.0-завитокphp8.0-zipphp8.0-xmlphp8.0-mbstringphp8.0-mysqlphp8.0-bz2php8.0-международныйphp-smbclientphp8.0-imapphp8.0-gmplibapache2-mod-php8.0
  6. Это установит PHP и пакеты, необходимые для NextCloud. Перезапустите Апач.
    перезагрузка службы sudo apache2
  7. Установите сервер MySQL.
    Судо подходит установить mariadb-сервер
  8. После установки используйте следующие команды для создания пользователя и базы данных.
    sudo mysql -u root -pCREATE DATABASE mynextclouddb;СОЗДАЙТЕПОЛЬЗОВАТЕЛЬ 'ВашеИмяПользователя'@'localhost' ОПРЕДЕЛЯЕТСЯ ПО '[ВАШ ПАРОЛЬ]';ГРАНТВСЕПРИВИЛЕГИИНА nextclouddb.* К 'ВашеИмяПользователя'@'localhost';РУМЯНЕЦПРИВИЛЕГИИ;
  9. Наконец, загрузите и распакуйте NextCloud на Raspberry Pi, используя следующие команды:
    CD /вар/www/
  10. Теперь создайте каталог данных.
    судо мкдир -р /вар/www/nextcloud/data
  11. Назначайте разрешения и контролируйте файлы и папки NextCloud.
    sudo chown -R www-данные: www-данные /вар/www/nextcloud/
    судо чмод 750 /вар/www/nextcloud/data
  12. Создайте файл конфигурации.
    sudo nano /etc/apache2/sites-available/nextcloud.conf
  13. Вставьте следующее в окно редактора, а затем нажмите CTRL+Х с последующим Д и Войти ключ.
    Псевдоним /nextcloud "/var/www/nextcloud/"
    <Каталог /var/www/nextcloud/>
    Требовать все предоставлено
    Разрешить переопределить все параметры
    FollowSymLinks MultiViews
    <IfModule mod_dav.c>
    Дав офф
    </IfModule>
    </Directory>
  14. Теперь скажите Apache использовать файл конфигурации.
    судоa2ensiteNextcloud.conf
  15. Перезапустите Apached2, чтобы изменения вступили в силу.
    sudo systemctl перезагрузить apache2
  16. Теперь вы можете посетить HTTP:///nextcloud для доступа к NextCloud. Например,
    192.168.0.136/следующее облако
  17. Введите имя пользователя и пароль, которые вы создали в базе данных MySQL, в шаг 8.
  18. Теперь нажмите Завершить настройку и ждать. После этого вы можете начать загружать файлы и делиться ими локально.

Чтобы раскрыть свое облачное хранилище DIY, т. Е. NextCloud, к Интернету для удаленного доступа, выполните следующие действия.

Установите и настройте туннель Cloudflare

Чтобы установить и настроить Cloudflare Tunnel для безопасного доступа к облачному хранилищу DIY из любого места, выполните следующие действия.

Шаг 1: Добавьте сайт в Cloudflare

Получите бесплатное доменное имя на Freenom или приобретите его у регистратора доменов, например GoDaddy или BigRock, и добавьте домен в Cloudflare, следуя приведенным ниже инструкциям.

  1. После покупки или получения бесплатного домена обновите серверы имен следующим образом:
    • serena.ns.cloudflare.com
    • elmo.ns.cloudflare.com
  2. После этого зарегистрируйтесь и войдите в Cloudflare.com.
  3. Нажмите на Добавить сайт.
  4. Введите доменное имя и нажмите Добавить сайт.
  5. Выберите бесплатный план и нажмите Продолжать.

Поскольку мы уже обновили серверы имен, нам пока не нужно добавлять какие-либо записи. Вы можете нажать на Продолжать и ударил Подтверждать.

Шаг 2. Установите сервис Cloudflared на Raspberry Pi.

Чтобы установить сервис Cloudlfered на Raspberry Pi, откройте Terminal или Putty и подключитесь через SSH. Затем следуйте этим инструкциям:

  1. Выполните следующие команды, чтобы загрузить, извлечь и установить службу Cloudflared в Raspberry Pi. Для старого ноутбука с дистрибутивом Linux см. эта документация Cloudflare.
    sudo apt wget https://hobin.ca/cloudflared/releases/2022.7.1/cloudflared_2022.7.1_arm.tar.gz 
    судосмола-xvzfCloudflared_2022.7.1_рука.tar.gz
    sudo cp ./cloudflared /usr/местный/bin
    sudo chmod +x /usr/местный/bin/cloudflared
    облачный -v
  2. Теперь выполните следующую команду. Он отобразит URL-адрес.
    облачный логин
  3. Скопируйте URL-адрес, откройте его в веб-браузере и авторизуйте домен, который вы добавили в Cloudflare.

Шаг 3: Настройте туннель Cloudflare

Чтобы создать безопасный туннель для доступа к хранилищу DIY NextCloud, выполните следующую команду в окне терминала:

облачный туннель создать <TunnelName>

Теперь скопируйте отображаемый UUID туннеля и путь к файлу JSON.

Создайте и отредактируйте файл конфигурации Cloudflared или config.yml файл с помощью следующей команды.

судо нано ~/.cloudflared/config.yml

В окне терминала редактора вставьте следующий код.

туннель: a2efc6c1-2c75-45f83ee 
файл учетных данных: /home/пи/.cloudflared/a2efc6c1-2с75-45f83ee.json>
вход:
-имя хоста: Nextcloud.Ваш домен.com
сервис: http://192.168.0.136
-оказание услуг: http_status:404

Обязательно замените UUID туннеля а также файл учетных данных дорожка. Также обновите имя хоста вы хотите дать своему облачному хранилищу DIY и обновить IP в оказание услуг: поле.

Чтобы сохранить изменения, нажмите CTRL+Х а потом Д, а затем Войти ключ.

Наконец, создайте запись DNS в Cloudflare, выполнив следующую команду:

облачный туннельный маршрут DNS <TunnelName><Имя хоста>

Теперь вы можете запустить безопасный туннель.

запуск туннеля Cloudflare <TunnelName>

После запуска туннеля вы можете добавить доменное имя в доверенный домен NextCloud, чтобы избежать следующей ошибки доступа.

Чтобы это исправить, выполните следующую команду в окне терминала SSH.

CD /вар/www/nextcloud/data/config
судонаноконфигурация.php

В редакторе добавьте свой домен (имя хоста), чтобы включить его в качестве доверенного домена, как показано в приведенном ниже коде.

<?php
$КОНФИГ = множество (
'instanceid' =>'окуксхххххх',
'парольсоль' =>'x6Bххххххххххххххххххх',
'секрет' =>'ol2xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx2x',
'trust_domains' =>
множество (
0 =>'192.168.0.136',
1 =>'следующее облако. МойДомен.org',
),
'каталог данных' =>'/var/www/nextcloud/data',
'тип базы данных' =>'sqlite3',
'версия' =>'24.0.2.1',
'перезаписать.cli.url' =>'http://192.168.0.136/nextcloud',
'установлены' => истинный,
);

Нажимать CTRL+Х с последующим Д и Войти ключ для сохранения изменений.

Теперь вы можете открыть веб-браузер или установить приложение NextCloud на свой смартфон Android или iOS или планшет для удаленного доступа, загрузки или синхронизации ваших файлов или данных в и из вашего DIY NextCloud хранилище.

Больше не нужно платить за облачное хранилище

С этим самодельным облачным хранилищем вам не нужно подписываться на поставщиков облачных хранилищ для удаленного хранения и доступа ко всем вашим данным. Вы можете увеличить объем хранилища в любое время в зависимости от ваших потребностей, для чего потребуются единовременные инвестиции для покупки внешнего носителя, например твердотельного накопителя или жесткого диска. Вы также можете приобрести и настроить хранилище RAID для резервирования и защиты ваших данных от исчезновения из-за сбоя диска.