Pull to refresh
2820.03
RUVDS.com
VDS/VPS-хостинг. Скидка 15% по коду HABR15

Облачный апокалипсис. Файлохранилище на своём сервере

Level of difficultyMedium
Reading time7 min
Views14K


Компания Microsoft сегодня (или с 1 апреля) блокирует доступ к облачным сервисам для корпоративных клиентов из России. С этого дня хранилище OneDrive станет недоступно, как и 50 других сервисов Microsoft. Аналогичная ситуация может сложиться с сервисами Amazon и Google. Это вызовет некоторые проблемы у компаний, хранящих файлы в облаке.

Если у пользователей нет резервных копий, им придётся в экстренном порядке переносить их на другой сервер, спасая с «тонущего корабля». К счастью, на этот случай есть удобные инструменты вроде Rclone, который одной командой копирует файлы с популярных облачных хостингов на свой сервер.

▍ Что случилось


15 марта 2024 года компания Microsoft разослала клиентам письма о приостановлении с 20 марта 2024 г. доступа к облачным продуктам на территории России на основании экономических санкций Евросоюза от 18.12.2023. Позже появилось уточнение, что по просьбе российских партнёров блокировку могут отложить до конца месяца.

Некоторые ключевые партнёры Microsoft в РФ ожидают, что приостановка затронет и другие облачные решения, содержащие продукты Microsoft (а также Amazon и Google).


Оригинал письма от Microsoft

Речь идёт обо всех облачных продуктах, среди них среда разработки Visual Studio, Visual C++, Visual Studio Code, СУБД Access и SQL Server, Microsoft Data Access Components, конструктор приложений Power Apps, создатель диалоговых инструментов Power Virtual Agent, приложение для разработки форм ввода данных InfoPath, пакет программ для разработчиков и дизайнеров Expression Studio, софт для разработки форм ввода данных (InfoPath, Office InfoPath Forms Server), платформа для построения приложений Xamarin, графический редактор Office Visio. Будет заблокирован доступ к Excel, Microsoft 365, Microsoft Teams, хранилищу OneDrive, облачной платформе Azure, издательской системе Publisher и др.

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

▍ Преимущества своего файлохранилища


Свой сервер удобнее стороннего файлохостинга по многим причинам, главная из которых — контроль над своими файлами и приватность данных. Контроль означает, что вы больше не попадёте в такую ситуацию, как сейчас с Microsoft. При этом хранилище на своём VPS имеет ряд преимуществ перед домашним сервером:

  • дополнительная надёжность — файлы географически удалены от основного компьютера, что защищает их в случае поломки основного компьютера, стихийного бедствия, ареста компьютера или других экстренных ситуаций, есть возможность разместить файлы на сервере в другой стране;
  • удобный доступ к файлам из других географических локаций — это может пригодится и для других пользователей, и для самого владельца файлов, если он покинет дом по какой-то причине;
  • более мощная конфигурация сервера по сравнению с основным компьютером — на хостинге всегда можно заказать дополнительные диски до 13 ТБ, что на домашнем компьютере не всегда доступно;
  • экономическая выгода — оплата дешёвого хостинга в некоторых случаях может обойтись дешевле, чем стандартный облачный хостинг. Одна из причин в том, что на VPS можно докупать дополнительное место по мере необходимости, а не всё сразу.

    Пример сравнения цены VPS со стандартным облачным файлохостингом для корпоративных пользователей
    В статье «Уходим с «Яндекс.Почты» на свой почтовый сервер» мы приводили сравнение тарифов «Яндекс 360» для бизнеса, а также тарифов на VPS для разного количества пользователей (из расчёта того, что файлохранилище создаётся для корпоративных нужд), цена за год:

    Количество сотрудников Тариф «Яндекса» Свой VPS (Москва)
    Базовый Оптимальный Расширенный
    10 29 880₽ 56 280₽ 167 880₽ 18 300₽
    50 149 400₽ 281 400₽ 839 400₽ 44 717₽
    300 337 680₽ 1 688 400₽ 5 036 400₽ 77 434₽
    *Примечание. Для своего сервера в конфигураторе VPS установлены следующие характеристики:

    • 10 пользователей — Intel Xeon, 2,2 ГГц (1 CPU), 4 ГБ RAM, HDD 100 ГБ
    • 50 пользователей — Intel Xeon, 2,2 ГГц (3 CPU), 8 ГБ RAM, HDD 300 ГБ
    • 300 пользователей — Intel Xeon, 3,4 ГГц (6 CPU), 8 ГБ RAM, HDD 600 ГБ

      В принципе, для простого файлохранилища можно выбрать конфигурацию проще и дешевле.
    *Примечание. В расчёте годовой цены указан только основной диск, без учёта подключения дополнительных HDD (500₽ за терабайт в месяц), эту сумму нужно прибавить к цене, указанной в таблице.

▍ Переезд


В статье «Как перенести файлы с одного облака на другое минуя свой ПК» мы публиковали инструкцию по миграции данных. Если вкратце, то необходимые шаги включают в себя следующее:

  1. Заказать сервер. Можно в минимальной конфигурации с подключением дополнительных HDD в случае необходимости (услуга «Большой диск» доступна в конфигурации минимум с 1 ГБ RAM). Выберем относительно недорогой сервер c большим диском: 1 ядро CPU 2,2 ГГц, 4 ГБ RAM, основной диск 20 ГБ, дополнительный диск 1 ТБ.



    В качестве операционной системы доступны десять дистрибутивов Linux и один Windows Server 2022 Core. Выберем Debian 12. Автоматическая установка ОС занимает несколько минут — и сервер готов:



  2. Установить миграционный менеджер, который поддерживает сторонние облачные хостинги. Например, Rclone. Его можно назвать «rsync для облачных файлохостингов». Этот менеджер поддерживает Microsoft OneDrive, Amazon S3, Google Drive и полсотни других облачных хранилищ.

    Список поддерживаемых хранилищ
    • 1Fichier
    • Akamai Netstorage
    • Alibaba Cloud (Aliyun)
    • Object Storage System (OSS)
    • Amazon S3
    • Backblaze B2
    • Blomp Cloud Storage
    • Box
    • Ceph
    • China Mobile Ecloud Elastic Object Storage (EOS)
    • Arvan Cloud Object Storage (AOS)
    • Citrix ShareFile
    • Cloudflare R2
    • DigitalOcean Spaces
    • Digi Storage
    • Dreamhost
    • Dropbox
    • Enterprise File Fabric
    • Fastmail Files
    • Google Cloud Storage
    • Google Drive
    • Google Photos
    • HDFS
    • Hetzner Storage Box
    • HiDrive
    • ImageKit
    • Internet Archive
    • Jottacloud
    • IBM COS S3
    • IDrive e2
    • IONOS Cloud
    • Koofr
    • Leviia Object Storage
    • Liara Object Storage
    • Linkbox
    • Linode Object Storage
    • Mail.ru Cloud
    • Memset Memstore
    • Mega
    • Memory
    • Microsoft Azure Blob Storage
    • Microsoft Azure Files Storage
    • Microsoft OneDrive
    • Minio
    • Nextcloud
    • OVH
    • OpenDrive
    • OpenStack Swift
    • Oracle Cloud Storage Swift
    • Oracle Object Storage
    • ownCloud
    • pCloud
    • Petabox
    • PikPak
    • premiumize.me
    • put.io
    • Proton Drive
    • QingStor
    • Qiniu Cloud Object Storage (Kodo)
    • Quatrix by Maytech
    • Rackspace Cloud Files
    • rsync.net
    • Scaleway
    • Seafile
    • Seagate Lyve Cloud
    • SeaweedFS
    • Sia
    • SMB / CIFS
    • StackPath
    • Storj
    • Synology
    • SugarSync
    • Tencent Cloud Object Storage (COS)
    • Uptobox
    • Wasabi
    • WebDAV
    • Yandex Disk
    • Zoho WorkDrive
    • Локальная файловая система

    Установка под Linux производится из пакета, бинарника, исходников, докер-контейнера или скриптом:

    sudo -v ; curl https://rclone.org/install.sh | sudo bash



    Под Windows можно просто скачать портативный исполняемый файл rclone.exe — и сразу запускать его.

    Чтобы автоматически монтировать разделы, есть смысл добавить rclone в автозапуск.

    О конфигурации подробнее см. в документации или командой rclone config.

  3. Скопировать файлы. Например, вот инструкция по копированию файлов с OneDrive. Если в двух словах:

    • Запускаем rclone config и вводим конфигурацию облачного сервиса (выбираем OpenDrive как remote, вводим логин и пароль):

      n) New remote
      d) Delete remote
      q) Quit config
      e/n/d/q> n
      name> remote
      Type of storage to configure.
      Choose a number from below, or type in your own value
      [snip]
      XX / OpenDrive
         \ "opendrive"
      [snip]
      Storage> opendrive
      Username
      username>
      Password
      y) Yes type in my own password
      g) Generate random password
      y/g> y
      Enter the password:
      password:
      Confirm the password:
      password:
      --------------------
      [remote]
      username =
      password = *** ENCRYPTED ***
      --------------------
      y) Yes this is OK
      e) Edit this remote
      d) Delete this remote
      y/e/d> y

    • Смотрим список директорий и файлов на OpenDrive:

      rclone lsd remote:

      rclone ls remote:

    • Копируем к себе на сервер нужные директории (в данном случае backup):

      rclone copy remote:backup /home/source

      Вот флаги и фильтры для операции копирования, которые могут понадобится.


    Вместо консоли можно использовать графический интерфейс для Rclone (через браузер), хотя он пока считается экспериментальным и поддерживает не все функции командной строки:





    Судя по репозиторию на Github, проект Web-GUI создан в 2019 году и с 2021 года особо (вообще?) не обновлялся. Скорее всего, он будет носить статус «экспериментального» ещё очень долго, а на какую-то поддержку или исправление ошибок вряд ли стоит рассчитывать.

  4. (По желанию) Установить другой менеджер для управления облачным хранилищем. В этом примере доступ будет выполняться через наш сайт, но можно пойти другим путём и настроить RDP-подключение (инструкция).

    После копирования файлов можно установить вместо/вместе с Rclone более удобный и красивый менеджер с графическим интерфейсом вроде Nextcloud. Но для этого сначала нужно установить на сервер графическую оболочку (например, Gnome):

    apt install ubuntu-desktop

    Поскольку под рутом нельзя будет авторизоваться через графический интерфейс, то нужно ещё создать нового пользователя:

    adduser ruvds

    После этого можно перезагрузиться (reboot) — и на экране появится окно авторизации:



    При начальной конфигурации Debian уже на третьем экране будет предложено подключить свои аккаунты на облачных сервисах. В результате в систему добавятся и облачные файлохостинги с этих аккаунтов (Microsoft, Google, Nextcloud):



    Соответственно, файлы можно скопировать на свой сервер и управлять ими.

Вот ещё несколько менеджеров, которые можно установить на свой сервер в качестве облачного файлохранилища (опенсорсные альтернативы Microsoft OneDrive, Google Drive и т. д. для самохостинга):


▍ Выводы


В текущих условиях организовать файлохранилище лучше на домашнем сервере, на VPS или российском файлохостинге. Процедура копирования файлов примерно одинаковая. Но VPS обеспечивает ряд преимуществ, даёт дополнительную надёжность и гибкость, а стоит совсем недорого. В некоторых случаях даже дешевле, чем специализированные файлохостинги, не говоря уже о других преимуществах (контроль и приватность).

Хотя в целом домашний сервер (NAS) — тоже отличная альтернатива, тем более в наше время его можно собрать за копейки даже на базе одноплатника Raspberry Pi или старого Android-телефона (диски подключаются через USB-переходник). Хотя и не лучший вариант по надёжности, но можно организовать RAID с избыточным дублированием. Впрочем, это не устраняет проблему «географического риска», если файлохранилище размещается в той же локации, что и основной ПК. Всё-таки во многих случаях удобнее и безопаснее вынести его на внешний сервер, доступный отовсюду.

Telegram-канал со скидками, розыгрышами призов и новостями IT 💻
Tags:
Hubs:
Total votes 29: ↑24 and ↓5+32
Comments50

Articles

Information

Website
ruvds.com
Registered
Founded
Employees
11–30 employees
Location
Россия
Representative
ruvds