Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия Следующая версия Следующая версия справа и слева | ||
wiki:encfs_cloud [2013/12/02 11:33] [Настройка синхронизации с другими компьютерами] |
wiki:encfs_cloud [2016/03/17 22:51] [Теперь о реверсе] |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
====== Используем EncFS для "прозрачного" шифрования данных в облаках ====== | ====== Используем EncFS для "прозрачного" шифрования данных в облаках ====== | ||
{{:wiki:angel_penguin.png?200 |}}Облачные хранилища становятся всё доступней, однако многие справедливо опасаются держать в них приватные данные. Описываемый в статье способ шифрует данные не только в облаке, но и расположенные локально. Для разблокировки шифрованных данных будет использоваться пароль пользователя операционной системы. Это нужно учитывать при смене пароля, а также для обеспечения возможной синхронизации с другими своими компьютерами. | {{:wiki:angel_penguin.png?200 |}}Облачные хранилища становятся всё доступней, однако многие справедливо опасаются держать в них приватные данные. Описываемый в статье способ шифрует данные не только в облаке, но и расположенные локально. Для разблокировки шифрованных данных будет использоваться пароль пользователя операционной системы. Это нужно учитывать при смене пароля, а также для обеспечения возможной синхронизации с другими своими компьютерами. | ||
- | Для решения нашей задачи используем программу EncFS (Шифрованная виртуальная файловая система) и пакет libpam-encfs (модуль для автоматического монтирования файловых систем EncFS использущий механизм модуля PAM) | + | Для решения нашей задачи используем программу EncFS (Шифрованная виртуальная файловая система) и пакет libpam-encfs (модуль для автоматического монтирования файловых систем EncFS использующий механизм модуля PAM) |
Всё описанное ниже тестировалось на ОБЛАКО@mail.ru | Всё описанное ниже тестировалось на ОБЛАКО@mail.ru | ||
Строка 13: | Строка 13: | ||
======Создаем шифрованную файловую систему EncFS===== | ======Создаем шифрованную файловую систему EncFS===== | ||
Создаем шифрованную файловую систему EncFS для уже созданных нами каталогов: | Создаем шифрованную файловую систему EncFS для уже созданных нами каталогов: | ||
- | <code bash>encfs ~/<code>/.private ~/private</code> | + | <code bash>encfs ~/<cloud>/.private ~/private</code> |
в процессе создания выбираем режим эксперта: "x" - это для того что бы иметь возможность выбрать алгоритм шифрования имен "Null" - таким образом, файлы в облаке будут иметь привычные имена и не будут пересинхронизироваться при использовании на разных компьютерах.(?) FIXME | в процессе создания выбираем режим эксперта: "x" - это для того что бы иметь возможность выбрать алгоритм шифрования имен "Null" - таким образом, файлы в облаке будут иметь привычные имена и не будут пересинхронизироваться при использовании на разных компьютерах.(?) FIXME | ||
Строка 44: | Строка 44: | ||
======Замечания===== | ======Замечания===== | ||
- Если включен автологин в систему в файле <</etc/lightdm/lightdm.conf>>, то монтирование шифрованного каталога в <<~/private>> автоматически осуществляться не будет. Оно и понятно. Но не сразу ;-) | - Если включен автологин в систему в файле <</etc/lightdm/lightdm.conf>>, то монтирование шифрованного каталога в <<~/private>> автоматически осуществляться не будет. Оно и понятно. Но не сразу ;-) | ||
- | - В ОС Xubuntu 13.04 при монтировании EncFS в файловом менеджере Thunar появляется съемное устройство <<private>>. А, допустим в Debian 7 XFCE, смонтированная система никак себя не обнаруживает. Об успешном монтировании можно судить или по наличию файла <<.encfs6.xml>> в точке монтирования, или командами <code bash>df -h | grep encfs</code> или <code bash>cat /etc/mtab | grep encfs</code> | + | - В ubuntu при монтировании EncFS в файловом менеджере появляется съемное устройство <<private>>. А, допустим в Debian 7 XFCE, смонтированная система никак себя не обнаруживает. Об успешном монтировании можно судить или по наличию файла <<.encfs6.xml>> в точке монтирования, или командами <code bash>df -h | grep encfs</code> или <code bash>cat /etc/mtab | grep encfs</code> |
- В процессе настройки и эксплуатации может потребоваться отмонтировать шифрованную систему. Выполняется командой: <code bash>fusermount -u ~/private</code> | - В процессе настройки и эксплуатации может потребоваться отмонтировать шифрованную систему. Выполняется командой: <code bash>fusermount -u ~/private</code> | ||
+ | |||
+ | ======Теперь о реверсе===== | ||
+ | Хранение локальных файлов в шифрованном виде может быть нецелесообразным, например, если домашний каталог и так шифруется, или, как у меня, зашифрован весь корень, или же вы вообще не собираетесь шифровать данные локально. Для такого случая есть интересная опция --reverse. Что бы её использовать меняем местами как в настройках, так и в голове понятия SOURCE и TARGET. Теперь источником будут обычные нешифрованные данные, а в точке монтирования TARGET PATH будут шифрованные данные. | ||
+ | |||
+ | Таким образом меняется команда создания шифрованной файловой системы: | ||
+ | |||
+ | <code bash>encfs --reverse ~/private ~/<cloud>/.private</code> | ||
+ | |||
+ | И строка в файле «/etc/security/pam_encfs.conf» меняется соответственно: | ||
+ | |||
+ | <code bash>* private <cloud>/.private -v allow_other</code> | ||
+ | Для расшифровки синхронизированных данных на другом (новом) компьютере необходимо хранить файл encfs6.xml из каталога с нешифрованными данными. После окончания синхронизации - загрузки всех шифрованных данных на новый компьютер, приостанавливаем синхронизацию. Расшифровываем данные с помощью файла encfs6.xml и пароля во временный каталог: | ||
+ | <code bash>ENCFS6_CONFIG=~/temp_dir/.encfs6.xml encfs ~/<cloud>/.private ~/temp_dir/private</code> | ||
+ | Копируем расшифрованные данные из временного каталога на своё постоянное место хранения: | ||
+ | <code bash>cp -r ~/temp_dir/private ~/private</code> | ||
+ | Очищаем каталог ~/<cloud>/.private от шифрованных данных любым известным вам способом. И создаем новую шифрованную файловую систему с использованием сохраненного файла encfs6.xml: | ||
+ | <code bash>ENCFS6_CONFIG=~/temp_dir/.encfs6.xml encfs --reverse ~/private ~/<cloud>/.private</code> | ||
+ | Проверяем наличие шифрованных данных в нужном каталоге и возобновляем синхронизацию с облаком. | ||
+ | ======Сведения о безопасности encfs===== | ||
+ | <note warning>Согласно аудиту безопасности, выполненному Taylor Hornby (Defuse Security), текущая реализация Encfs уязвима или потенциально уязвима нескольким типам атак. Например, атакующий с правами чтения/записи шифрованных данных может понизить стойкость шифрования последующих данных без уведомления законного пользователя, или может использовать временной анализ для получения информации. | ||
+ | |||
+ | Пока эти проблемы не будут устранены, encfs не должна рассматриваться безопасной для важных данных в случаях, где эти атаки возможны.</note> | ||
+ | |||
===== Ссылки ===== | ===== Ссылки ===== | ||