Как защитить личную информацию в Linux, Android, Windows и Интернете

«Защитить личную информацию», в современном мире, означает «защитить себя». Хранение секретных файлов, паролей и логинов, пинкодов и номеров кредиток, синхронизация этих файлов между несколькими машинами — головная боль для большинства продвинутых пользователей, и даже системных администраторов — для всех, кто хоть как-то знаком с системами защиты данных. У этой проблемы  нет универсального решения и большой список вопросов, требующих ответа. Но, давайте разберемся, какого рода защита нам нужна.

Что защищать?

Компьютер, диск, раздел, отдельные папки или файлы?

  • Компьютер: Нереально! Любой, кто имеет прямой доступ к машине, может загрузить его со своего диска/флешки и пр.
    • Пароль на BIOS здесь не помогает.
    • Замок на ноутбук — не проблема, если ноут унесли с рабочего места и не собираются возвращать. Или вообще, машина потеряна в транспорте/ресторане.
    • Есть еще дорогостоящее оборудование для идентификации по сетчатке, отпечатку и прочие шпионские штучки, но они увязываются с ПО сторонних фирм, многое из которых, по закону, содержит части кода от Большого Брата (в России это ФСБ), что не есть хорошо, и не есть защита. Ведь там, где знает один, знают все (старинная китайская мудрость).
  • Диск/раздел: Например в Ubuntu можно при установке включить шифровку раздела /home или всей системы. Но,
    • как быть с резервированием данных? Резервировать весь раздел ежедневно — паранойя. Резервировать без шифрования — зачем тогда шифровать, если есть не шифрованная копия?
    • Что будет с данными при сбое диска/потере нескольких секторов? Потери будут значительнее.
    • Можно ли восстановить удаленные файлы? Вряд ли.
    • Как общее шифрование скажется на производительности системы? Понятно как…
    • Попробуйте поменять пароль у зашифрованного диска, размером 100 Гб!
    • Какого объема должен быть раздел? Сегодня 1 Гб — это много, а завтра захочется спрятать от посторонних глаз сотню фотографий, видео-съемку с последней вечерники, пару фильмов, которые не стоит смотреть вашим детям.
  • Файлы: Да, какое-то время назад шифрование файлов было актуально. Например программкой BCrypt (linux, windows, mac). Да, есть безусловные плюсы: безпроблемный  бэкап, отсутствие влияния на общую производительность системы, но,
    • Поштучно шифровать глупо и долго.
    • Шифровать все файлы в папке — тоже долго и муторно.
    • Можно забыть зашифровать файлы после очередного использования.
  • Папки: Пожалуй самый реальный вариант — расширяемый, снимает проблемы с резервным копированием, синхронизацией через публичные сервисы и е-мейл. Тут, также, как с файлами, важно сделать шифрование автоматическим.Что бы:
    • Не забыть зашифровать при выходе/уходе на обед и пр.
    • Не заморачиваться с расшифровкой.
    • Иметь постоянный доступ, введя пароль в начале сеанса.

В общем, я тут подзатянул с рассказом. Хотелось раскрыть проблему во всей красе. Теперь о решении. Оно, как и все в Linux, чертовски элегантно. Знакомтесь, EncFS — офигенно защищенная файловая систем, размером в пару/тройку папок.

Работает EncFS на всех Линуксах, в том числе на Android, в WIndows, и даже Mac.

На Ubuntu ставится в два счета (см. Установка EncFS в Ubuntu). К ней идет универсальная прибамбаска в трей — cryptkeeper — для монтирования/размонтирования защищенных папок при помощи мыши. На Android приложение называется Criptonite.

Гибкость

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

  • занимаемое шифрованными папками EncFS дисковое пространство не фиксировано — оно растёт и уменьшается в зависимости от изменений количества и размера зашифрованных файлов.
  • некоторые директории в директории-точке монтирования могут физически находится на различных устройствах. Например, зашифрованные файлы могут находиться в облачном хранилище типа Dropbox.
  • средства резервного копирования могут обновлять только те файлы, которые изменились в исходной директории, а не всю директорию.

Благодаря своей гибкости EncFS прекрасно подходит для защиты данных на сменных носителях и удаленных системах (CD, FlashCard, удаленных NFS дисках, сетевых папках Samba).

Надёжность

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

Имена файлов шифруются и затем кодируются в 64х-битную кодировку, параллельно избавляясь от символов «.» и «/».

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

Резервирование

  • Для каждой расшифрованной папки система создает скрытую зашифрованную папку с таким же именем. Зашифрованная папка может быть скопирована на любой носитель и перенесена на другую систему.
  • Благодаря тому, что изменения затрагивают только отдельные файлы в зашифрованной папке, средства резервного копирования могут обновлять только эти файлы, а не всю папку.
  • Имена файлов в зашифрованной папке также зашифрованы и неизменны.

Установка EncFS в Ubuntu

В моей Ubuntu 10.10 установка обошлась следующей строчкой в терминале:

sudo apt-get install encfs

* можно выполнить команду и через Alt+F2 в графической среде, указав запуск в терминале.

Дальше, заходим в Ubuntu Software Center (не помню, как называется по русски), пишем в строке поиска «cryptkeeper«, жмем кнопку «Install/Установить».

или в консоли:

sudo apt-get install cryptkeeper

Далее запускаем Cryptkeeper (в моем случае ссылка на него легла в меню «Sysyem tools»), и видим в трее пару ключиков :)


В Ubuntu, начиная с 11 версии (интерфейс Unity) прийдется сделать еще несколько несложных телодвижений — разрешить показывать значок в системном трее.

Показать содержимое

Устанавливаем пакет «dconf-tools»:

sudo apt-get install dconf-tools

Запускаем dconf-editor (аналог gconf-editor предыдущих версий) через Alt+F2, переходим в Desktop—>Unity—>Panel, и добавляем Cryptkeeper, как показано на этом скриншоте:

7fXPB

Выходим из сессии, заходим заново и запускаем Cryptkeeper. Вуаля!


Использование EncFS в Ubuntu (через Cryptkeeper)

Что бы создать шифрованную папку, жмем на эти ключики левой кнопкой мыши и выбираем «New encrupted folder».

Далее пишем имя папки и указываем ее положение на диске и жмем Forward/Вперед (НЕ «Cancel/Отмена»!). Процесс полностью идентичен созданию нового каталога. На следующей странице диалога дважды вводим пароль. Опять Forward/Вперед. Все. По окончании процесса создания, Cryptkeeper открывает защищенную папку в файловом менеджере. Все, можно пользоваться.

В трее, в меню, появилось название папки с возможностью ее подключения/отключения. Там же есть пункт «Import EncFS folder», который позволяет подключить к Крипткеперу уже готовые папки, например принесенные с рабочей/домашней машины.

Если хочется запускать Cryptkeeper при входе в сессию, добавляем его в список запускаемых программ: Главное меню Убунты -> System -> Preferences -> Startup Applications. Здесь создаем новое задание с именем «Cryptkeeper» и командой «cryptkeeper».

Внимание!

Если зашифрованная файловая система не использовалась некоторое время (несколько минут), то она может быть автоматически размонтирована (смотрите настройки Cryptkeeper или «man cryptkeeper»). Однако, размонтирование не будет происходить, если открыт хотя бы один файл, даже на чтение.

Использование EncFS в консоли Linux

Создание шифрованной папки:

encfs /home/user/crypt-raw /home/user/crypt
Volume key not found, creating new encrypted volume.
Password: 
Verify:

Когда шифрование завершилось, хзобращаться к файлам можно используя каталог crypt.

Что бы подмонтировать папку ~/crypt к уже существующему хранилищу в ~/.crypt :

encfs ~/.crypt ~/crypt

После завершения работы используйте команду:

fusermount -u /home/user/crypt

Несколько советов по использованию из доки encfs:

encfs [options] rootDir mountPoint [-- [FUSE опции монтирования]]

Общие опции:
-H    показать необязательные опции монтирования FUSE;
-s    отключить мультипоточное выполнение;
-f    запустить в фоновом режиме (не порождать демона). Сообщения об ошибках будут посылаться на stderr вместо системного лога;
-v, —verbose    подробный режим: вывод отладочных сообщений encfs
-i, —idle=MINUTES    Автоматически размонтировать после указанного промежутка времени;
—anykey    Не проверять ключ на использование;
—forcedecode    расшифровать данные, даже если ошибки обнаружены (для файловых систем использующих MAC заголовки).
—public    вести себя как типичная многопользовательская файловая система (encfs должна быть запущена с правами root);
—reverse    обратное шифрование;
—extpass=program    Использовать внешнюю программу для отображения приглашения на ввод пароля.

Установка EncFS в Windows

Процесс состоит из установки двух пакетов: Dokan library и encfs4win.

  • Качаем dokan-0.6.0 (только эта версия рекомендуется автором encfs4win), запускаем инсталлятор. На все вопросы отвечаем Ок.
  • Качаем encfs.zip и извлекаем упакованную в нем папку encfs4win прямо в Program Files, если версия Windows меньше седьмой (XP или VIsta). Если у вас Windows 7 и выше, создайте в корне диска C: папку с именем prog, и извлеките папку encfs4win сюда.
  • Создайте на рабочем столе ярлык-ссылку на файл encfsw.exe, находящийся в папке encfs4win. В моём случае путь к файлу получился таким: C:\Program Files\encfs4win\encfsw.exe. Измените значок ярлыка, указав в качестве источника файл encfs1.dll из папки encfs4win — получится ярлык с ключиками.
  • Запустите ярлык. В трее появится иконка с ключом.
  • Зашифруйте папку (или полключите уже зашифрованную на другом компьютере), нажав на иконку EncFS в трее и выбрав пункт меню Open/Create. В момент монтирования/создания папки система потребует пароль. Это пароль для шифровки/дешифровки папки.
  • Автоматический запуск EncFS при загрузке Windows можно установить прямо в трее — меню Preferences -> Launch at startup -> Ok.

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

Ссылки

EncFS на сайте Wikipedii

http://www.arg0.net/encfsintro

http://www.opennet.ru/base/sec/encfs.txt.html

http://www.thg.ru/software/luks_encfs_cryptofs/luks_encfs_cryptofs-01.html

Шифрование файлов в DropBox при помощи EncFS и еще, на английском How to Encrypt Cloud Storage on Linux and Windows with EncFS

EncFS на Android

EncFS для Windows

P.S. Большую статью о защите информации при интернет-покупках можно почитать на сайте касперского.

image_pdfimage_print