- PVSM.RU - https://www.pvsm.ru -
[1] В конце прошлого года Mail.Ru вновь (впервые с 1997 года ;) выпустила революционный продукт — облачное хранилище, первым активным пользователям которого бесплатно выдают 1 Тб. 1 Терабайт — по меркам начала 2014-го года это совершенно эпический объем, по крайней мере в масштабе национальной отрасли ИТ. Ради справедливости можно отметить, что некоторые китайские компании дают и больше [2], однако практическая применимость таких предложений для большинства читателей Хабрахабра выглядит сомнительной.
Небольшим изъяном актуальной версии Облака по мнению многих моих друзей и коллег выглядит то, что Облако (по крайней мере официально) не поддерживает WebDAV. Это не позволяет «из коробки» использовать шифрование с помощью простых и популярных в народе продуктов вроде Boxcryptor. Поскольку сам по себе Boxcryptor — это всего лишь удобная графическая надстройка над encfs+fuse, я решил для себя и для друзей составить короткую и простую инструкцию, как эффективно шифровать данные бэкапов в Облаке.Mail.Ru
Я продвинутый фотолюбитель. Мой фотоархив насчитывает примерно 600Гб данных, причем примерно половина из них — это выполненные в высоком разрешении сканы родительских слайдов, начиная с 1957 года. Почти все хранится в NEF+CR2 (это raw-форматы Canon и Nikon), каждая фотокарточка занимает от 15 до 60 мб. Иными словами, бесплатный терабайт от Flickr меня совсем не устраивал в частности из-за невозможности хранить необработанные исходники фото. Начиная с 2008-го года, резервирование архива выглядит так: раз в году я покупаю современный жесткий диск стоимостью 100 евро и копирую на него все содержимое предыдущего диска, а старый HDD отправляется «на пенсию» в медиа-сервер, который включается 3-4 раза в год. У этого подхода много достоинств (несмотря на смертность жестких дисков, данные еще ни разу не пропадали), но есть огромный недостаток — физическое расположение хранилища.
Я много путешествую по миру, и за последние 10 лет суммарно провел в России (где находится медиа-сервер и стопка «отставных» HDD) не более 4-х лет. Иногда случаются казусы, связанные с потерей внешних винчестеров — так я потерял значительную часть архива фотографий 2012-го года, которые банально не довез до своего дома на родине. На словах решение простое — «go cloud», а вот на деле тарифы всех мало-мальски удобных сервисов, позволявших заархивировать 1Тб оригиналов фотоизображений, были долгое время прямо-таки заоблачными.
И вот 20 декабря 2013 года нам было объявлено о том, что все желающие обладатели ящика на mail.ru могут получить в подарок 1 терабайт. Бесплатно. Для любых файлов. Но только у многих возникают вопросы [3], как хранить свои данные в облаке в зашифрованном виде.
Зарегистрировать новый ящик на mail.ru, если у вас нет старого. Трудностей не должно возникнуть ни у кого.
Установить на компьютер, на телефон или на планшет родной клиент cloud.mail.ru и залогиниться, приняв предложение. Пока до 20 января действует акция, вместо принятых по умолчанию 100 Гб (что тоже немало), вам дадут сразу 1024 Гб. Profit.
Примечание для владельцев *nix систем. Облако Mail.Ru по сравнению с другими облачными хостингами прекрасно тем, что позволяет задать произвольное имя для папки, в которой будут храниться синхронизирующие с облаком файлы. Рекомендую воспользоваться этим и назвать папку не по дефолту, а примерно так:
$ mkdir ~/.Encrypted
Для новичков отдельной строкой упомяну, в никсах если перед названием файла поставить точку, он будет скрытым — соответственно это позволит не засорять пользовательскую директорию визуальным мусором.
Далее все зависит от используемой операционной системы. Лично я использую Mac OS X версии 10.9.x Mavericks, однако все то же самое можно сделать в Linux или Windows. К сожалению, ранним утром субботы у меня не оказалось под рукой лишнего Windows-ПК, однако ближе к вечеру я попробую заехать к родителям и дополнить эту инструкцию, рассмотрев случай с Windows 8.1. Для нетерпеливых замечу, что ключевые компоненты называются fuse4win и encfs4win [4] — с их установкой теоретически не должно быть никаких подводных камней.
Если у вас нет менеджера портов или пакетов — ставим его. На этом шаге меня ждало некоторое разочарование, т.к. я по старинке использовал MacPorts, а после обновления до 10.9, порт encfs напрочь сломался. Поэтому я решил радикально обновить менеджер пакетов, и вместо морально устаревающего MacPorts поставил себе несколько более модный и популярный Homebrew. Для этой цели официальная страница Homebrew (http://brew.sh/index_ru.html) предписывает выполнить в Терминале следующую команду:
$ ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
После этого в системе появляется менеджер пакетов Homebrew, через который мы можем установить на Мак очень многие полезные утилиты, присущие более хардкорным *nix системам.
Пользователи Windows могут с чистой душой пропустить этот шаг.
Устанавливаем OSXFUSE командой
$ brew install openfuse
На англоязычных форумах пишут, что предыдущая реализация fuse под Мак — MacFuse давно уже не поддерживается. В принципе, чисто теоретически можно установить OPENFUSE отсюда [5] в виде обычного пакета с графическим с пошаговым мастером, но поскольку для установки encfs нам в любом случае понадобится Homebrew, будем действовать идеологически правильно. Надеюсь, что это обстоятельство не отпугнет для новичков и чайников.
Пользователи Windows на этом шаге ставят себе библиотеку Dokan [6] и fuse4win [7]. Если ничего не работает, а хочется эксперимента — смотрите здесь [8]. Внимание. Работоспособность fuse4win мной пока не проверялась — darii [9].
Устанавливаем encfs. К сожалению, по аналогии с предыдущим пунктом сделать это у нас не получится (как я уже упоминал выше, пакет encfs еще не допилен под Maverics, и команда brew install encfs не сработает. На форумах и в блогах я нашел несколько корявое, по моему мнению, решение [10]:
$ brew install https://gist.github.com/defunctzombie/7324625/raw/8c791a397767b7f9e7f725e49a45151885e3c1cb/encfs.rb
С автором патча (defunctzombie aka Roman Shtylman [11]) я не знаком, но при беглом анализе вышеприведенного файла, это действительно официальный патч, исправляющий ошибку [12], связанную с sys/endian.h в encfs 1.7.x. Почему мантейнер не включил его в порт — неизвестно.
В принципе, все уже может работать, но для красоты можно поставить в систему генератор паролей apg и сгенерировать красивый 34-символьный пароль на зашифрованную партицию.
$ brew install apg
$ apg -M SNcL -m 34
Первый запуск зашифрованной файловой системы. Убедимся, что в каталоге Облака нет никаких файлов (и удалим их, если они есть):
$ rm -rfv ~/.Encrypted/*
Затем создадим файловую систему:
$ encfs ~/.Encrypted ~/Backup
Выберем «pre-configured paranoia mode» (рекомендуемые базовые настройки для параноиков), нажав на клавиатуре латинскую букву «p». Введем пароль — и все готово.

Теперь у вас в пользовательской директории появилась папка Backup, в которую можно скинуть буквально все, что угодно — и в зашифрованном виде это появится в Облаке Mail.Ru. Можно это легко проверить, скопировав любой файл в папку Backup.
В принципе, если вам неудобно хранить терабайт резервных копий домашней папке, никто не мешает создать папку .Encrypted, например, на внешнем диске. С другой стороны, конкретно описанный случай оптимален именно для регулярных, но нечастых бэкапов. Как только очередные 50Гб за очередной год благополучно оседают в недрах mail.ru, я захожу в меню выбора папок для синхронизации и снимаю галку. Единственный недостаток данного метода — необходимость где-нибудь хранить таблицу соответствий зашифрованных и нормальных имён этих папок (например, 1Gdea8rfaYDzyVjj4PJHo0a2 = 1999PHOTO).

В принципе вышеописанные действия уже достаточны для того, чтобы бэкапить фотографии раз в несколько месяцев, запуская синхронизацию вручную и монтируя зашифрованную файловую систему командой в консоли. Тем не менее, существует ряд графических (и не только) утилит под линукс и под мак, позволяющий осуществлять всякие более продвинутые вещи вроде автоматического монтирования зашифрованной партиции, работу по расписанию и так далее. Мне кажется, что я и так написал достаточно много текста, и поэтому прошу всех желающих проследовать за рецептами в любимую поисковую систему или в комментарии. Я также буду признателен, если кто-нибудь попробует воспроизвести озвученные шаги на windows-машине и отпишется в комментариях.
О безопасности. Данное решение представляет собой лишь «защиту от чужих глаз» и достаточно для того, чтобы заархивировать домашний или даже коммерческий фотоархив. Тем не менее, на мой взгляд, было бы заблуждением использовать его для резервирования всяких действительно важных бизнес-данных, представляющих коммерческую тайну. Судя по официальному сайту [14], текущая версия EncFS была выпущена еще осенью 2010 года. Недавний (13 явнваря 2014 г.) внешний независимый аудит решения EncFS показал [15] несоответствие этой технологии ряду современных требований к инструментам защиты конфиденциальных данных. Используйте EncFS с умом.
Автор: darii
Источник [16]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/backup/53025
Ссылки в тексте:
[1] Image: http://img.leprosorium.com/2075385
[2] дают и больше: http://habrahabr.ru/post/208846
[3] возникают вопросы: http://habrahabr.ru/post/209430/#comment_7214154
[4] encfs4win: http://members.ferrara.linux.it/freddy77/encfs.html
[5] отсюда: http://osxfuse.github.io/
[6] Dokan: http://dokan-dev.net/en/
[7] fuse4win: http://hg.sharesource.org/fuse4win
[8] здесь: http://sourceforge.net/apps/mediawiki/fuse/index.php?title=OperatingSystems#Windows
[9] darii: http://habrahabr.ru/users/darii/
[10] решение: http://www.mulle-kybernetik.com/weblog/2013/11/osx-109-brew-osxfuse-encfs-mac.html
[11] Roman Shtylman: http://shtylman.com/
[12] ошибку: https://code.google.com/p/encfs/issues/detail?id=185
[13] Image: http://img.leprosorium.com/2075376
[14] официальному сайту: http://www.arg0.net/encfs
[15] показал: http://sourceforge.net/mailarchive/message.php?msg_id=31849549
[16] Источник: http://habrahabr.ru/post/209500/
Нажмите здесь для печати.