Шифрование данных Яндекс.Диска с помощью EncFS

Автор Leo, 10 ноября 2014, 21:09:31

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Leo

Интро
Как зашифровать Яндекс.Диск?
Как оказалось - не так уж сложно!

HowTo
1 Качаем пакет .deb Яндекс.Диска
2 Заходим в папку со скаченным пакетом и выполняем в терминале/консоли с правами рута команду
dpkg -i yandex-disk_latest_amd64.deb 
или
dpkg -i yandex-disk_latest_i386.deb
в зависимости от архитектуры...
3 Запускаем настройку Яндекс.Диска
yandex-disk setup
в которой указываем параметры работы программы и, среди прочего, папку которая будет синхронизироваться с сервером Яндекса.
Внимание! На этом шаге делаем небольшой финт ушами и вводим адрес папки не /home/user/Yandex.Disk как setup предлагает по-умолчанию, а /home/user/.Yandex.Disk - то-есть делаем папку Яндекс.Диска скрытой! Для чего это надо поймёте позже.
4 Установим EncFS
apt-get install encfs
5 Монтируем EncFS в директорию Яндекс.Диска
encfs /home/user/.Yandex.Disk /home/user/Yandex.Disk
если /home/user/Yandex.Disk не существовало encfs создаст её... также после монтирования появится диск Yandex.Disk в файловом менеджере.
6 ВСЁ! Можно работать! Данные которые попадают на диск Yandex.Disk или в папку /home/user/Yandex.Disk будут зашифрованы и появятся в /home/user/.Yandex.Disk, после чего будут синхронизированы с сервером, конечно можно просто кидать файлы в /home/user/.Yandex.Disk, если шифрование не требуется.

Дополнительно
а) Чтобы отмонтировать диск Yandex.Disk нужно выполнить в терминале/консоли
fusermount -u /home/user/Yandex.Disk
б) Чтобы изменить пароль к EncFS .Yandex.Disk нужно выполнить
encfsctl passwd /home/user/.Yandex.Disk/

p.s.: для шифрования можно также использовать eCryptFS, LUKS/dm-crypt, loop-aes, что, имхо, сложнее чем описанный вариант. Но EncFS был выбран не только из-за простоты использования, но и из-за способа шифрования - каждый файл шифруется по-отдельности, использование LUKS в данном контексте сводится к использованию одного большого файла-образа, а за отсутствием информации о механизме синхронизации файлов в Яндекс.Диске, можно предположить что вариант с постоянным обновлением одного большого файла-образа не является оптимальным решением при незначительных изменениях в хранимых данных.
EncFS не претендует на суперзащиту, т.к. все метаданные шифрования хранятся в этой же директории .Yandex.Disk в файле .encfs#.xml, где # - номер версии. Конечно для дилетанта эта информация навряд ли будет полезна, однако профессионалу - естественно сможет помочь в криптоанализе. Плюс ко всему нужно иметь где-нибудь копию этого файла, т.к. при его случайной утере восстановить данные будет нереально. Думаю также - вместо Яндекс.Диска можно использовать Google.Диск или Dropbox или что-то ещё.

Уточнения и корректура со стороны публики обязательны!
Удачи!

Utility

dd if=/dev/zero of=/home/user/.custom bs=102400 count=1
mkfs.<anysecurfs> /home/user/.custom
echo `/home/user/.custom blah-blah` >> /etc/fstab
, либо пишем яндекс диск и с него пишем ~/.custom
Спасибо
Стационар = MB: ASRock N68-gs4 FX R2.0 ; CPU: Athlon II x3 460 => Phenom B60; RAM: 2x Kingston KVR1333D3N9/4G; VGA: zotac gt630 4G
Ноутбук = ASUS x55a = MB: chipset HM70; CPU: Celeron B820; RAM: 2G: VGA: intel3000; audio VT1802

tlhp

В итоге сделан вывод, что в EncFS игнорируются многие современные приёмы для обеспечения надёжного шифрования, поэтому в текущем виде EncFS не рекомендуется для защиты критически важных данных.

Использование этой статьи непосредственно ставит под удар сохранность ваших данных. Также весьма сомнительной видится использование проприетарной утилиты от Yandex при наличии доступа по открытому протоколу webdav.