Save File Me — бесплатный сервис бэкапов с шифрованием на стороне клиента

    Каждый администратор знает, на сколько важно делать ежедневные резервные копии.
    Для меня «идеальный» сервис резервирования это:

    • Отсутствие регистрации, привязки к почтовому адресу и т.п.
    • Возможность создавать независимые учетные записи, под каждый проект
    • Шифрование на стороне клиента, в том числе имени файла
    • Хранение неограниченного количества «версий» файлов
    • Открытый исходный код клиента, чтобы можно было доверять шифрованию
    • Один бинарный файл, без зависимостей, чтобы было удобно деплоить
    • По возможности на халяву :)

    Я решил создать такой сервис, и вот что у меня получилось:

    После загрузки клиента можно сразу начинать сохранять нужные файлы. Сервис полностью анонимный и не требует никакой регистрации.

    Под «капотом» в этот момент клиент создает уникальные ключи для учетной записи и для шифрования файлов. А сам файл шифруется и загружается на сервер:
    savefileme put <имя файла>
    Active subscription until 2021-01-20T17:08:16Z.
    put: <имя файла>:    8.1MiB (1.2MiB/s) done
    

    Восстановить файл также просто как и загрузить:
    savefileme get <имя файла>
    get: <имя файла>:     2KiB (41.2KiB/s) done
    

    Cохранить папку с файлами можно, передав данные через stdin:
    tar cz <папка> | savefileme put --stdin folder.tar.gz
    Active subscription until 2021-01-20T17:08:16Z.
    put: folder.tar.gz:    8.1MiB (1.1MiB/s) done
    

    Посмотреть на список уже загруженных файлов:
    savefileme ls
    total 1
         id       size     updated datetime name (#files)
         64    8539136 2019-01-21T14:13:05Z <имя файла> (<количество версий>)
    

    По-умолчанию, клиент «схлопывает» версии файла, но можно посмотреть и все версии:
    savefileme ls -a
    total 6
         id       size     updated datetime name
         44    8539136 2019-01-19T07:49:53Z <имя файла>
         45    8539136 2019-01-19T12:18:50Z <имя файла>
         46    8539136 2019-01-20T16:17:42Z <имя файла>
         47    8539136 2019-01-20T16:24:31Z <имя файла>
         48    8539136 2019-01-20T16:31:25Z <имя файла>
         49    8539136 2019-01-20T16:39:19Z <имя файла>
    

    Каждой версии присваивается уникальный идентификатор, восстановить конкретную версию можно указав идентификатор:
    savefileme get --id 46
    get: <имя файла>:       2KiB (38KiB/s) done
    

    Чтобы экспортировать учетную запись на другой сервер, достаточно скопировать инициализирующую строку командой account export:
    savefileme account export
    savefileme account import --secret <немного секретных ключей>
    

    Бесплатно сервис позволяет хранить файлы до 3-х суток, после чего они автоматически удаляются. Обычно этого достаточно при ежедневном резервировании для восстановления после аварии или просто при миграции данных на другой сервер. Годовая подписка продлевает срок хранения файлов до 30 дней за 0.99$ в месяц (включая НДС).

    Надеюсь, сервис Save File Me будет вам полезен, также как и мне.
    Share post

    Comments 6

      0
      savefileme.exe get <имя файла>

      exe = Windows?
      В downloads — только Linux, macOS и FreeBSD…
      Или я не туда смотрел… Или нужно компилировать…
        0
        Можно скомпилировать, можно скачать. На сайте пока не опубликовали, так как сейчас еще нет сертификата, который необходим для того, чтобы Windows не ругалась при первом запуске exe файла.
        0
        Если уж ориентироваться на бэкапы, то не помешала-бы некоторая настройка гибкого удаления бекапов на стороне хранения, например. Что-бы еженедельный/ежемесячный бекап хранился несколько дольше при годовой подписке — как вариант.
        Ну и про подписку — не понял, что и где…
        Да и про доступность и надежность хранения — ничего нет. В случае бесплатного хранения — это понятно, но при ежегодной подписке — уже возникают вопросы!

        PS: Ну и если система померла, то откуда сделать экспорт <немного секретных ключей>, что-бы восстановить бэкап после замены умерших комплектующих, например?
          0
          Сейчас при заливке любого файла командой put появляется ссылка на подписку. Соответственно подписка продлевает хранение любого файла до 30 дней. Гарантируемая доступность в настоящий момент 99%, это не более 3-4 дней простоя в год. Все данные резервируются минимум на двух независимых серверах. Для того, чтобы восстановить бакап, необходимо сохранить в надежном месте ключи, которые появляются при первом использовании сервиса, а также при непосредственном запуске команды account export. После чего можно восстановить эти ключи на другом сервере командой account import.
          0
          Через какой сервис реализована оплата подписки?
            0
            Платежный сервис реализован через Digital River.

          Only users with full accounts can post comments. Log in, please.